【发布时间】:2018-02-08 22:08:55
【问题描述】:
这很奇怪,我已经坐了将近一个星期。
也许这很明显,我只是不再正确地看到事情了......
我们也欢迎任何替代解决方案的线索。
我对网站没有任何影响。
我是 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>。
【问题讨论】:
标签: python html css xpath scrapy