我正在尝试获取内容的列表说明。这是一个JavaScript。 他们使用method ='POST'给我这个信息。 当我尝试在html中检查网站时..他们的描述与其中只有一个脚本。当页面加载(onClick)时,我唯一一次在html中看到那些描述内容。但不是在scrapy shell中。
这是我从该页面获取的信息:
General:
Request URL:http://map.imobiliare.ro/map/serv/detalii
Request Method:POST
Status Code:200 OK
Remote Address:46.4.85.111:80
Referrer Policy:no-referrer-when-downgrade
Response headers:
Cache-Control:private
Content-Length:1944
Content-Type:application/json; charset=utf-8
Date:Thu, 12 Oct 2017 06:41:48 GMT
Server:Microsoft-IIS/7.5
X-AspNet-Version:4.0.30319
X-AspNetMvc-Version:4.0
X-Powered-By:ASP.NET
Request Headers:
Accept:application/json, text/javascript, */*; q=0.01
Accept-Encoding:gzip, deflate
Accept-Language:en-US,en;q=0.8
Connection:keep-alive
Content-Length:50
Content-Type:application/x-www-form-urlencoded; charset=UTF-8
Cookie: ...
...
Referer:http://map.imobiliare.ro/map/home?pagenr=1&tranz=1&categ=4
User-Agent: ...
X-Requested-With:XMLHttpRequest
Form Data:
id_anunt=2754018&tranz=1&categ=4&mc=1&id_cautare=0
我尝试使用FormRequest获取该信息,但它为我提供了500个http状态。
这是我在scrapy shell中使用的代码:
data = {'id_anunt': '2754018', 'tranz': '1', 'categ': '4', 'mc': '1', 'id_cautare': '0'}
head = {'Content-Type': 'application/json; charset=utf-8', 'Accept': 'application/json, text/javascript, */*; q=0.01'}
req = FormRequest(url="http://map.imobiliare.ro/map/serv/detalii", method='POST', formdata=data,
headers=head)
fetch(req)
答案 0 :(得分:0)
我找到了答案....这是获得它的方法。
data = {'id_anunt': '2754018', 'tranz': '1', 'categ': '4', 'mc': '1', 'id_cautare': '0'}
req = FormRequest.from_response(response, url="http://map.imobiliare.ro/map/serv/detalii", formdata=data,
callback=self.description_items)
yield req
你必须输入回复和发布帖子的网址。