Scrapyスパイダーを使用して、FormRequest
を使用してウェブサイトをクロールして、都市固有のページの検索クエリにキーワードを送信しようとしています。私が読んだものとは単純に思えますが、問題があります。 Pythonにはまったく新しいので、何か明白なことがあれば、私は見落としてしまいます。Scipeを使用した検索クエリのPOSTリクエスト
私が助けてくれる主な3つのサイトは次のとおりです。 マウス対Python [1]; Stack Overflow; Scrapy.org [3]私はクロールしています特定のURLのソースコードから
: 私は、検索の名前があると思い<input name="dnn$ctl01$txtSearch" type="text" maxlength="255" size="20" id="dnn_ctl01_txtSearch" class="NormalTextBox" autocomplete="off" placeholder="Search..." />
「dnn_ct101_txtSearch:私が見つけた特定のページのソースからwww.lkqpickyourpart.com\locations/LKQ_Self_Service_-_Gainesville-224/recents
私が使用した例では、2と引用されていました。車の検索でキーワードとして "toyota"を入力したかったのです。ここで
は、私は今、私のクモの持っている、と私はbegginingに過度のものを輸入しています知っていますコードされています、
import scrapy
from scrapy.http import FormRequest
from scrapy.item import Item, Field
from scrapy.http import FormRequest
from scrapy.spider import BaseSpider
class LkqSpider(scrapy.Spider):
name = "lkq"
allowed_domains = ["lkqpickyourpart.com\locations/LKQ_Self_Service_-_Gainesville-224/recents"]
start_urls = ['http://www.lkqpickyourpart.com\locations/LKQ_Self_Service_-_Gainesville-224/recents/']
def start_requests(self):
return [ FormRequest("www.lkqpickyourpart.com\locations/LKQ_Self_Service_-_Gainesville-224/recents",
formdata={'dnn$ctl01$txtSearch':'toyota'},
callback=self.parse) ]
def parsel(self):
print self.status
は、なぜそれが結果のいずれかの種類を検索したり、印刷されていないです例私は検索バーに入っていないウェブサイトにログインするためだけにコピーしていますか?
おかげで、 ダン初心者のPythonライターここ
ありがとうございました!これは本当に役に立ちます。だから開始URLには、 "field ="の前と "&sp"の前に、文字変数 "keyword"や、生成したい結果ページに応じて変更できるものがあるかもしれません。 –
ありがとう!これは本当に役に立ちます。だから開始URLには、 "field ="の後に "&sp"の前に文字変数 "keyword"や、生成したいページの検索に応じて変わる可能性のあるものがありますか?もし私が他のスタートURLから拾い読みされた検索結果でそれをまとめることができるようにしたいのであれば、車と付属画像のリストを保存する最良の方法は何でしょうか。 –