表单提交后使用Scrapy进行数据刮取

表单提交后使用Scrapy进行数据刮取,scrapy,Scrapy,我正在尝试从列表详细信息页面中删除内容,这些内容只能通过单击“查看”按钮来查看,该按钮会触发表单提交。我对Python和Scrapy都是新手 示例标记 <li><h3>Abc Widgets</h3> <form action="/viewlisting?id=123" method="post"> <input type="image" src="/images/view.png" value="submit" &

我正在尝试从列表详细信息页面中删除内容,这些内容只能通过单击“查看”按钮来查看,该按钮会触发表单提交。我对Python和Scrapy都是新手

示例标记

<li><h3>Abc Widgets</h3>
     <form action="/viewlisting?id=123" method="post">
        <input type="image" src="/images/view.png" value="submit" >
     </form>
</li>
  • 我收到以下错误“请求url必须是str或unicode”
  • 请查看
    extract()
    的零碎文档:“将匹配的节点序列化并返回为unicode字符串的列表”(我添加了粗体)

    列表的第一个元素可能就是您想要的。所以你可以这样做:

        request = Request(url=response.urljoin(action[0]), callback=self.parse_profile)
    
  • 其次,当我硬编码一个URL以克服上述问题时,它似乎是我的 解析函数将返回类似于列表的内容

  • 根据的文档,它是一个
    选择器列表
    。将
    extract()
    添加到
    xpath
    中,您将得到一个包含文本标记的列表。最后,在进一步处理之前,您需要清理并加入列表中的元素。

    感谢您的清晰解释和调用文档的相关部分
        request = Request(url=response.urljoin(action[0]), callback=self.parse_profile)