おかげさまでよろしくお願いいたします。 Python 2.7でScrapyを使用しているときに問題が発生しました。 クロールしようとしたウェブページはa discussion board for Chinese stock marketです。 最初の数字「42177」をこのページのバナーのすぐ下に表示しようとしたとき(そのウェブページに表示されている数字は、ここに表示されている数字ではない可能性があります。リアルタイムで更新されています...)、私はいつも空のコンテンツを取得します。私はこれが動的なコンテンツの問題かもしれないが、それを正しくクロールする方法の手がかりを持っていないことを認識しています。スクラブを使用すると内容が空になる
私が使用したコードは次のとおりです。
item["read"] = info.xpath("div[@id='zwmbti']/div[@id='zwmbtilr']/span[@class='tc1']/text()").extract()
私は、XPathが正しく設定されていると思うと、私はこの応答の戻り値をチェックして、それは確かにこの下には何もないと言ってくれましたディレクトリ。結果は'read': [u'<div id="zwmbtilr"></div>']
<div id="zwmbtilr">
と</div>
の間にあるはずです。
本当にありがとうございました。
ありがとうDjunzu!最初に提案されたオプション、説明、またはリンクについて簡単な説明をしていただけますか?私はこの問題を真実にするためにこれが私の最初の時間ではなかったので、テクニックを学ぶのが大好きです...ありがとう! – fbabelle
私は動的コンテンツを扱う必要がなかったので、以前の経験はありません。しかし、私はブラウザのリクエストを調べることにしました(FirefoxではFirebug + NoScriptを使うことができます)。また、javacriptソース自体も調べてください。単純なケースであれば、必要なリクエストを再作成する方法がわかります。たぶんこれが助けになるかもしれません:http://stackoverflow.com/questions/8550114/can-scrapy-be-used-to-scrape-dynamic-content-from-websites-that-are-using-ajax – Djunzu