python - Scrapy不发送帖子请求
问题描述
我试图向 URL 发出 post 请求,但 scrapy 没有发送 post 请求。我没有得到正确的回应。
下面是我的代码。
import scrapy
class MainSpider(scrapy.Spider):
name = 'main'
directory = 'https://www.constructionenquirer.com/directory'
start_urls = [directory]
def parse(self, response):
sectors = response.xpath('(//select[@name="sector"]/option)[position()>1]')
for sector in sectors:
vals = sector.xpath('.//@value').get()
data = {
'ce-directory-action': 'ce-directory-action',
'sector': vals,
'action': 'find-firms-by-sector'
}
yield scrapy.FormRequest(url=self.directory, formdata=data, callback=self.parse_sectors)
def parse_sectors(self, response):
yield {
"Name": response.xpath('//h3/a/text()').get()
}
解决方案
您的代码中有错字:
'ce-directory-action': 'sector-search',
推荐阅读
- javascript - .html() 不能与 fadeOut() 一起正常工作;
- android - 如何在 kotlin 中将 Header 添加到 recyclerview?
- javascript - 仅从第一个父项中删除 id div
- python - Django - 在 My PhoneReview 应用程序中实现模型和视图的问题
- javascript - 角度 8 中的下一个可选路线
- oracle - PL/SQL 不打印到控制台(在 SQLDeveloper 中)
- javascript - 使用正则表达式在javascript中拆分字符串
- javascript - 地形图边缘不可见
- django - 如何在 django 中为以下查询编写等效过滤器
- javascript - 是否可以使用 Chart.js 为大量时间捕获数据制作动画?