使用Scrapy发送此FormRequest后,Web服务器返回“500 Internal Server Error”

时间:2010-10-24 13:19:52

标签: python scrapy

我根据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 

1 个答案:

答案 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)