tom*_*gal 1 python web-crawler request scrapy
我想废弃一个包含带有过滤选项的组合框的网页。基本 url 相同,但请求有效负载取决于选定的组合框值。我有一个可用选项列表,我创建了一个循环,它遍历组合框值并执行请求。代码如下:
def parse_product_lines(self, response):
options = json.loads(response.body_as_unicode())
product_lines = options['products']
for product_line in product_lines:
payload = self.prepare_payload(product_line)
scrapy.Request('http://example.com',
method="POST",
body=urllib.urlencode(payload),
callback=self.parse_items)
def parse_items(self, response):
print response
Run Code Online (Sandbox Code Playgroud)
,但不执行请求。有人知道那里发生了什么吗?
首先,一个Spider类parse默认使用方法。
每个回调应该返回一个Item或一个dict,或一个迭代器。
你应该yield request在你的parse_product_lines方法中告诉scrapy接下来处理。
| 归档时间: |
|
| 查看次数: |
2525 次 |
| 最近记录: |