爬虫发出ajax请求,requests能获取正常响应,scrapy发出请求却返回400
我爬取一个网站,数据是要向服务器发出异步请求加载带,我仿造headers,参数都没有错误,用requests能获取正常响应,当scrapy不行
def parse_histical_data(self, response):
html = BeautifulSoup(response.body, 'lxml')
patterm = re.compile(r'smlId: [0-9]*', re.MULTILINE|re.UNICODE)
script = html.find('script', text=patterm).text
smlId_text = patterm.search(script).group()
smlId = smlId_text.split(' ')[1]
curr_id = response.meta['pair_id']
header=html.select('#leftColumn > div.instrumentHeader > h2')[0].string
st_date = '01/01/2001'
end_date = '05/07/2050'
interval_sec = 'Daily'
sort_col = 'date'
sort_ord = 'DESC'
action = 'historical_data'
data = {'smlID': smlId, 'curr_id': curr_id, 'header': header, 'st_date': st_date, 'end_state': end_date,
'interval_sec': interval_sec, 'sort_col': sort_col, 'sort_ord': sort_ord, 'action': action}
head = self.download_headers.copy()
request = FormRequest(self.his_url, callback=self.parse_histical_data,
headers=head, formdata=data)
yield request
请求带网址是'https://www.investing.com/ins...',使用一模一样带headers和data,scrapy返回400
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
一般来说请求头的问题:
注释掉 headers 里面的 Content-Length 这一栏
请问楼主解决了吗,遇同样问题,请问咋解决呢
请求头有错误