【发布时间】:2017-07-18 16:17:26
【问题描述】:
我试图从中提取数据的网站是: http://www.genome.jp/dbget-bin/www_bget?ecs:ECs0037
我正在尝试提取“nt 序列”:
try:
geneSeq = browser.find_element_by_xpath("html/body/div[1]/table/tbody/tr/td/table[2]/tbody/tr/td[1]/form/table/tbody/tr/td/table/tbody/tr[11]/td").text
except:
geneSeq = "file\nnot found"
geneSeq = geneSeq[geneSeq.find('\n')+1:]
我删除了输入的第一行,因为我不需要它,但我在文件中注册的代码中有 br 标签,但 python 看不到它们。我试过 .isspace() 并返回 false,因此 .rsplit() 不起作用。不幸的是,当我尝试使用 f.write 将序列写入文件时,这些行仍然出现。
有没有办法去掉 br 标签?
【问题讨论】:
-
您可能应该考虑使用功能更全的网络抓取工具,例如beautiful soup。
-
问题是当我使用 BeautifulSoup 并提取 html 时,网站查询尚未运行,所以我实际上没有看到序列
-
使用很长的 XPath 会很脆弱...您可能应该花一些时间阅读一些有关 CSS 选择器和 XPath 的教程,以便您可以手工制作它们。您的 XPath 可以替换为
"//th/nobr[.='NT seq']/following::td"。