J'ai une page qui ressemble à ceci:
Company A<br /> 123 Main St.<br /> Suite 101<br /> Someplace, NY 1234<br /> <br /> <br /> <br /> Company B<br /> 456 Main St.<br /> Someplace, NY 1234<br /> <br /> <br /> <br />
5 Réponses :
Une fois ce fragment HTML, utilisez simplement une regex pour remplacer
code> suivi d'une nouvelle ligne en option par une seule nouvelle ligne, puis divisée sur plusieurs nouvelles lignes. Cela devrait entraîner plusieurs paragraphes individuels que vous pouvez traiter manuellement. P>
Merci pour la réponse, mais malheureusement, ce n'est pas aussi simple que d'utiliser une regex. J'ai simplifié le document ci-dessus pour mieux illustrer ma question. Le document réel a un mélange de balises de formatage HTML et similaires.
Mais vous ne Care i> sur le document, juste la pièce séparée par
code> tags. Utilisez BeatialSoup pour extraire la première partie.
Je ne sais pas pourquoi quelqu'un a révélé votre réponse; J'apprécie l'aide. Je vais essayer quelques idées basées sur votre suggestion. J'espérais juste que Beaulsoupe aurait éliminé le besoin d'analyses manuelles. Merci.
Beautifulsoup est bon pour les tags qui traitent de la structure et du style, mais
code> ne tombent pas dans l'une ou l'autre de ceux-ci.
Bien que j'aurais probablement préféré travailler avec la réponse de Michal, je ne l'ai pas vu avant de terminer mon projet. J'ai pu faire ce dont j'avais besoin d'utiliser votre suggestion. Merci.
Vous pouvez faire un peu de manipulation avant tout. Par exemple, changez toutes les nouvelles lignes à des blancs, puis substituez 2 occurrences et plus de
code> à un autre délimiteur comme | code>. Après cela, vous pouvez obtenir vos champs.
$ ./python.py
Company A<br />123 Main St.<br />Suite 101<br />Someplace, NY 1234|Company B<br />456 Main St.<br />Someplace, NY 1234|
Peut-être que vous pourriez utiliser cette fonction: ajoutez quelque chose à vérifier pour être un
code> étiquette ou nouvelle ligne: p> [[u'Company A'],
[<br />],
[u'\n123 Main St.'],
[<br />],
[u'\nSuite 101'],
[<br />],
[u'\nSomeplace, NY 1234'],
[<br />, u'\n', <br />, u'\n', <br />, u'\n', <br />],
[u'\nCompany B'],
[<br />],
[u'\n456 Main St.'],
[<br />],
[u'\nSomeplace, NY 1234'],
[<br />, u'\n', <br />, u'\n', <br />, u'\n', <br />]]
Vous devez examiner l'attribut tstrings code> trouvé dans les balises, puis utilisez "\ n" .join () à ce sujet. P>
J'ai une question plus mince .Ce comment j'ai résolu