1

这是链接。当您单击第一个链接(“附件和流体”)时,会在同一页面上打开一个包含其他链接的新表格,单击其他链接,您将与表格进行交互。问题是第一个链接与第二个链接具有相同的 xpath,尽管它们都有不同的 url,但是我如何区分两个链接以便提取表。

每当您从上一页移动到此页时,此 xpath 仅生成第一个链接部分:

sp_half=response.xpath('//li[@class="tab pane first"]/a/@href').extract_first()

而这个生成该页面的所有链接也包含其他链接。

urls=response.xpath('//li/a/@href').extract() 

第二个 xpath 正在生成带有许多额外链接的所需 url。我正在使用scrapy来做到这一点。有什么方法可以区分允许我提取表格的第一个 url 和第二个 url。

4

1 回答 1

1

您不需要在第一个 xpath 处提取链接。您可以像我在第一行中展示的那样收集每个tab pane first类,然后使用简单的 for 循环进入该类以提取链接。

links = response.xpath('//*[@class="tab pane first"]')
for link in links
   a_link = link.xpath('./a/@href').extract()
   yield {'Category Link': a_link}
于 2018-04-22T12:37:41.477 回答