J'ai besoin d'un moyen de rendre une valeur nulle et de l'ajouter à une liste en python lorsque du texte est manquant dans une page Html.
Les données brutes rendues en Html sont les suivantes :
<BR><DIV CLASS="c5"><P CLASS="c6"><SPAN CLASS="c8">TICKER: </SPAN><SPAN CLASS="c2">FB (NASDAQ) (57%); </SPAN><SPAN CLASS="c4">AXP</SPAN><SPAN CLASS="c2"> (NYSE) (54%)</SPAN></P>
</DIV>
<BR><DIV CLASS="c5"><P CLASS="c6"><SPAN CLASS="c8">INDUSTRY: </SPAN><SPAN CLASS="c2">NAICS511110 NEWSPAPER PUBLISHERS (61%); SIC2711 NEWSPAPERS: PUBLISHING, OR PUBLISHING &</SPAN></P>
</DIV>
<BR><DIV CLASS="c5"><P CLASS="c6"><SPAN CLASS="c8">LOAD-DATE: </SPAN><SPAN CLASS="c2">November 7, 2016</SPAN></P>
<!-- Hide XML section from browser
</DOCFULL>
</DOC> -->
<DIV CLASS="c10"> </DIV>
<A NAME="DOC_ID_0_2"></A><!-- Hide XML section from browser
<DOC NUMBER=3>
<DOCFULL> -->
<BR><DIV CLASS="c5"><P CLASS="c6"><SPAN CLASS="c8">TICKER: </SPAN><SPAN CLASS="c2">CS (PAR) (91%); AXJ (ASX) (91%); AXA (BIT) (91%); </SPAN><SPAN CLASS="c4">AXP</SPAN><SPAN CLASS="c2"> (NYSE) (57%)</SPAN></P>
</DIV>
<BR><DIV CLASS="c5"><P CLASS="c6"><SPAN CLASS="c8">COUNTRY: </SPAN><SPAN CLASS="c2">UNITED KINGDOM (88%)</SPAN><SPAN CLASS="c2"> </SPAN><SPAN CLASS="c2">United Kingdom GB</SPAN></P>
</DIV>
<BR><DIV CLASS="c5"><P CLASS="c6"><SPAN CLASS="c8">REGION: </SPAN><SPAN CLASS="c2">Europe; EU; Western Europe</SPAN></P>
</DIV>
<BR><DIV CLASS="c5"><P CLASS="c6"><SPAN CLASS="c8">LOAD-DATE: </SPAN><SPAN CLASS="c2">May 12, 2016</SPAN></P>
J'ai besoin d'écrire les valeurs du texte entre les balises, qui sont ; TICKER
, INDUSTRY
, COUNTRY
, REGION
y LOAD-DATE
en deux listes distinctes.
- L'ensemble 1 doit contenir
TICKER
,INDUSTRY
yLOAD-DATE
. - L'ensemble 2 doit contenir
COUNTRY
yREGION
.
Si COUNTRY
est manquant dans le texte, je dois ajouter une entrée contenant un Null
à la liste correspondante.
Exemple
- La première liste de balises Html ne contient pas
COUNTRY
et ainsi de suiteNULL
doit être stocké - La deuxième liste de balises Html contient
COUNTRY
et ainsi de suiteUnited Kingdom
doivent être stockées.
Le résultat devrait devenir :
['Null', 'United Kingdom\nUnited Kingdom GB']
Les solutions que j'ai essayées sont les suivantes :
countrypattern="\<SPAN CLASS=\"c8\"\>COUNTRY: </SPAN><SPAN CLASS=\"c2\"\>(.*)\</SPAN>"
countrypatternvalues=[a.strip("*") for a in re.findall(countrypattern,response)]
if not countrypatternvalues:
countrypatternvalues.append(None)
countryvalues = re.sub(cleanr, '', str(countrypatternvalues))
Veuillez m'aider à résoudre ce problème.