веб-сервер возвращает «500 Internal Server Error» после отправки этого FormRequest с помощью Scrapy - PullRequest
1 голос
/ 24 октября 2010

Я создаю следующий запрос формы в соответствии с содержимым httpFox (дополнение Firefox). Однако веб-сервер всегда возвращает «500 Internal Server Error».

Может ли кто-нибудь помочь мне в этом?

Исходный URL: 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 Ответ

2 голосов
/ 10 августа 2011

Ваша проблема с веб-страницей Intel, а не с помощью скрапа.но ... формы обычно имеют некоторые скрытые поля, лучший способ сделать запрос 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)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...