这是一个奇怪的现在,我坐了近一个星期了 也许这很明显,我只是不再把事情弄清楚了...... 也欢迎任何替代解决方案的线索 我对网站没有影响力 我是HTML的新手。
我尝试使用scrapy从网站获取特定链接。 (有多少人在改变)
在这种情况下RELATIVELINK1和RELATIVELINK4;两者都标有"细节"。
多少个表取决于您允许查看的内容。
在我开始解决问题之前:
我使用scrpy shell来测试响应
我从HTML代码的所有其他部分获取值
我尝试过xpath,response.css和scrapy的LinkExtractor
我试着忽略路径中的/ p部分。
现在,如果我尝试使用xpath获得响应:
response.xpath('/html/body').extract()
- 我得到了所有内容,包括<p>
内的内容
但是当我到达时
response.xpath('/html/body/.../p').extract()
- 我只得到:['<p>\n<br>\n</p>']
然后
response.xpath('/html/body/.../p/table').extract()
- 我得到[ ]
相同的
response.xpath('/html/body/.../p/br').extract()
以下是我遇到问题的HTML细分:
<p>
<BR>
<TABLE BORDER>
<TR>
<TD><b>NAME1</b></TD>
<TD><b>NAME2</b></TD>
<TD><b>NAME3</b></TD>
<TD><b>NAME4</b></TD>
<TD COLSPAN=3><b>Links</b></TD>
</TR>
<TR>
<TD>NUMBER1</font></TD>
<TD>LINK1 </font></TD>
<TD> </font></TD>
<TD>NAME5 </font></TD>
<TD><a href=RELATIVELINK1>Details</a></TD>
<TD><a href=RELATIVELINK2>LABEL1</TD>
<TD><a href=RELATIVELINK3>LABEL2</TD>
</TR>
<TR>
<TD>NUMBER2</font></TD>
<TD>LINK2 </font></TD>
<TD> </font></TD>
<TD>NAME5;</font></TD>
<TD><a href=RELATIVELINK4>Details</a></TD>
<TD><a href=RELATIVELINK5>LABEL1</TD>
<TD><a href=RELATIVELINK6>LABEL2</TD>
</TR>
</TABLE>
<BR>
没有</P>
。
答案 0 :(得分:0)
for link_href in response.xpath('//a[.="Details"]/@href').extract():
print(link_href)