Sto cercando di ottenere gli elementi di un documento HTML che contiene il seguente schema di testo: # \ S {11}Utilizzando BeautifulSoup per trovare un tag HTML che contiene un determinato testo
<h2> this is cool #12345678901 </h2>
Così, il precedente sarebbe partita utilizzando:
soup('h2',text=re.compile(r' #\S{11}'))
E i risultati sarebbe qualcosa di simile:
[u'blahblah #223409823523', u'thisisinteresting #293845023984']
sono in grado di ottenere tutto il testo che m atches (vedi riga sopra). Ma voglio che l'elemento genitore del testo corrisponda, quindi posso usarlo come punto di partenza per attraversare l'albero dei documenti. In questo caso, vorrei che restituissero tutti gli elementi h2, non le corrispondenze del testo.
Idee?
In realtà, la restrizione h2 viene ignorata in base alla documentazione di BeautifulSoup: "Se si utilizza il testo, tutti i valori forniti per il nome e gli argomenti delle parole chiave vengono ignorati." – Rabarberski
@Rabarberski Non sono sicuro di quale fosse la situazione nel 2010, ma [entro il 2012] (https://web.archive.org/web/20120427003845/http://www.crummy.com/software/BeautifulSoup/bs4/doc/ # the-text-argument) trova che usare 'text' (o' stringa' che lo ha sostituito) non ignorerebbe altre restrizioni –