0
나는 10002 우편 번호를 전달하는 웹을 긁어 내려고하고있다. 는 여기에 내가 응답 본문에 일부 HTML을 가지고,하지만 결과 내 Scrapy 스파이더Scream FormRequest with playload
class HoytSpyder(scrapy.Spider):
name = "hoyt_usa"
allowed_domains = ["hoyt.com"]
start_urls = ["http://hoyt.com/find-a-dealer"]
def parse(self, response):
url = 'http://hoyt.com/find-a-dealer'
headers = {}
headers['Content-Type'] = 'application/x-www-form-urlencoded'
headers['Cookie'] = '__cfduid=db974b4cdb2e79ef45abf70b16fd9b83e1494447240; PHPSESSID=3re29iv8ejkl9fapv1kqk28jk7; _dc_gtm_UA-28625097-1=1; _ga=GA1.2.689069018.1494447289; _gid=GA1.2.581535200.1494451642; _gat_UA-28625'
headers['Referer'] = 'http://hoyt.com/find-a-dealer'
headers['User-Agent'] = 'Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/57.0.2987.133 Safari/537.36'
payload = {'hoyt_dealer_basic_search%5Bzip%5D':'10002', 'hoyt_dealer_basic_search%5Bradius%5D':'50', 'hoyt_dealer_basic_search%5Bgo%5D': '', 'hoyt_dealer_basic_search%5B_token%5D': 'FxDqyxsyOtDcLHBhsY1AR49Zhq9Oj2rmPeDxPvq0chg', 'hoyt_dealer_basic_search%5Bemail_address%5D': ''}
return FormRequest.from_response(response, formname='hoyt_dealer_basic_search', headers=headers, formdata=payload, callback=self.parse_dealers)
def parse_dealers(self, response):
print '+++++++++++'
html = response.xpath('//div[@class="row content-row"]//div[@class="medium-3"]')
print len(html)
print response.body
입니다. 나는 또한 Formdata (url, headers = headers, formdata = payload)를 시도했다. 그러나 도움이되지 않았다. 응답으로 페이로드를 전달할 때 어떤 문제가 있다고 생각한다. 아이디어가 있으십니까? 많이 감사하겠습니다.
응답에는 var theMarkers = [items]가 포함되어야합니다. 이제 theMarkers 당신은 양식 데이터가 아닌 URL 인코딩 키를 사용할 필요가
고마워요, 그것은 도움이! –