私はウェブページからデータをスクラップしていますが、<br>
タグのある特定のセクションに対してそうしました。
<div class="scrollWrapper">
<h3>Smiles</h3>
CC=O<br>
<button type="button" id="downloadSmiles">Download</button>
</div>
以下のスクリプトを実行して出力することで、この問題を解決しましたCC=O
。
from lxml import html
page = requests.get('http://chem.sis.nlm.nih.gov/chemidplus/name/'+ substance)
tree = html.fromstring(page.text)
if ("Smiles" in page.text):
smiles = tree.xpath('normalize-space(//*[text()="Smiles"]/..//br[1]/preceding-sibling::text()[1])')
else:
smiles = ""
しかし、さまざまな化学物質の他のページをブラウズしていると、タグが含まれているページに出会いました。それらの間で情報を取得しながら、それらを取り除く方法がわかりません。以下に例を示します。希望する出力は ですc1(c2ccccc2)ccc(N)cc1
。
<div class="scrollWrapper">
<h3>Smiles</h3>
c1(c2ccccc2)<wbr>ccc(N)<wbr>cc1<br>
<button type="button" id="downloadSmiles">Download</button>
</div>