使用Xpath爬取网页表格时抓取所有表格而非目标表格该如何解决?
借助 Python: Get html table data by xpath 的回答,我尝试从网页爬取 Shareholding Pattern(股权结构) 信息,代码如下:
import lxml.html as LH import pprint import requests def screenerdata (symbol): with requests.Session() as sess: resp = sess.get('https://www.screener.in/company/'+symbol+'/consolidated/') root= LH.fromstring(resp.content) for tbody in root.xpath('/html/body/main/section[9]/div[2]/table/tbody'): data = [ [tdata.text_content().replace(u'\xa0', u'').strip() for tdata in trow.xpath('td')] for trow in tbody.xpath('//tr') ] pprint.pprint(data) screenerdata("LTTS")
由于目标网页上的HTML表格没有任何id或class属性,我使用Mozilla Firefox开发者工具复制了对应Xpath。整体运行正常,但代码会同时抓取其他表格的数据,请问有什么方法可以修复这个问题,谢谢。
收到两条回答后更新:
虽然影响不大,但我发现要爬取的表格本身没有id或唯一类名,但容纳该表格的section标签有唯一id,我已经根据该特点对代码做了对应调整。
内容的提问来源于stack exchange,提问作者Aadee Maanav
相关产品推荐
相关产品推荐

