我正在尝试从使用 Ajax 的站点获取数据。页面加载,然后 Javascript 请求内容。有关详细信息,请参阅此页面:https ://www.tele2.no/mobiletelefon.aspx
问题是,当我尝试通过调用此 url 来模拟此过程时: https ://www.tele2.no/Services/Webshop/FilterService.svc/ApplyPhoneFilters
我收到 400 响应,告诉我该请求不被允许。这是我的代码:
# -*- coding: utf-8 -*-
import scrapy
import json
class Tele2Spider(scrapy.Spider):
name = "tele2"
#allowed_domains = ["tele2.no/mobiltelefon.aspx"]
start_urls = (
'https://www.tele2.no/mobiltelefon.aspx/',
)
def parse(self, response):
url = 'https://www.tele2.no/Services/Webshop/FilterService.svc/ApplyPhoneFilters'
my_data = "{filters: []}"
req = scrapy.Request( url, method='POST', body=json.dumps(my_data), headers={'X-Requested-With': 'XMLHttpRequest','Content-Type':'application/json'}, callback=self.parser2)
yield req
def parser2(self, response):
print "test"
我是scrapy和python的新手,所以我可能缺少一些明显的东西