我根据httpFox(Firefox插件)的内容构建了以下FormRequest。但是,Web服务器总是返回“500内部服务器错误”。
有人可以帮我吗?
原始网址是: http://www.intel.com/jobs/jobsearch/index_ne.htm?Location=200000008
这是我的蜘蛛骨架:
class IntelSpider(BaseSpider):
name = "intel.com"
allowed_domains = ["taleo.net"]
def start_requests(self):
req_china = FormRequest("https://intel.taleo.net/careersection/10020/moresearch.ajax",
formdata={
'iframemode': '1',
'ftlpageid': 'reqListAdvancedPage',
'ftlinterfaceid': 'advancedSearchFooterInterface',
'ftlcompid': 'SEARCH',
... # commentsThere are a lots of data here.#
'location1L2': '-1',
'dropListSize': '25',
'dropSortBy': '10'},
callback=self.test)
return [req_china]
def test(self, response):
print response.body
return
答案 0 :(得分:2)
你的问题来自英特尔网页,而不是来自scrapy。 但... 表单通常有一些隐藏字段,发出POST请求的最佳方式是这样的:
def start_requests(self,response):
req_china = FormRequest.from_response(response=response,
formdata={
'iframemode': '1',
'ftlpageid': 'reqListAdvancedPage',
'ftlinterfaceid': 'advancedSearchFooterInterface',
'ftlcompid': 'SEARCH',
... # commentsThere are a lots of data here.#
'location1L2': '-1',
'dropListSize': '25',
'dropSortBy': '10'},
callback=self.test)