2016-05-25 10 views
0

私はfirebugで作業していましたが、私はAPIを照会する次の辞書を持っています。 Pythonの要求にヘッダーとペイロードをScrapyにインポートする

payload = "{\"prefixText\":\"2261\",\"count\":\"10 \"}" 

headers = { 
'origin': "site.com", 
'x-requested-with': "XMLHttpRequest", 
'user-agent': "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/49.0.2623.87 Safari/537.36", 
'content-type': "application/json; charset=UTF-8", 
'accept': "*/*", 
'referer': "***", 
'accept-encoding': "gzip, deflate", 
'accept-language': "en-US,en;q=0.8", 
'cookie': "ASP.NET_SessionId=tnrqoff2y; 
'cache-control': "no-cache" 
} 

、これを使用するのと同じくらい簡単です:

response = requests.request("POST", url, data=payload, headers=headers) 

がどのように私はScrapyでこれらを使用することができますか?私はミドルウェアと関係があることを知っていますが、私はhttp://doc.scrapy.org/en/latest/topics/spider-middleware.htmlを読んできましたが、その方法は私には分かりません。

答えて

1

「リクエストを作成する」にはあまり役に立ちませんが、それはrequestsのモジュールです。 Scrapyはクロールフレームワークで、ウェブサイトのスパイダーを作成するために使用され、そのスパイダーではリクエストルールが必要です。とにかく

あなたはクモを作成し、あなたがPOSTリクエストを送信する必要がある場合、あなたはこのようにそれを行うことができます。

... 
yield Request(url, method="post", headers=dict(), body=body, callback=self.parse_method) 
... 

私はその時に見てきた最初のthis tutorial

+0

おかげで、以下の推薦、ちょうど私がhttp://doc.scrapy.org/en/latest/topics/request-response.htmlを見ていたはずであることに気づいた – user61629

関連する問題