【问题标题】:Scrapy: Can't select Content with Xpath, response.css in HTML DocumentScrapy:无法在 HTML 文档中使用 Xpath、response.css 选择内容
【发布时间】: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>&nbsp</font></TD>
           <TD>NAME5&nbsp;</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>&nbsp</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>

没有&lt;/P&gt;

【问题讨论】:

    标签: python html css xpath scrapy


    【解决方案1】:
    for link_href in response.xpath('//a[.="Details"]/@href').extract():
        print(link_href)
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-04-03
      • 1970-01-01
      相关资源
      最近更新 更多