ホームページ >バックエンド開発 >Python チュートリアル >Python クローラーでよく使用されるモジュールの分析
この記事では、Python クローラーの一般的に使用されるモジュールをより詳細に分析し、例を示して詳しく説明します。皆さんの参考に共有してください。具体的な分析は次のとおりです。
不気味なモジュール
台湾のマスターによって開発された、シンプルな機能を備えており、Web サイトのすべてのコンテンツを自動的にクロールできます。もちろん、どの URL をクロールする必要があるかを設定することもできます。
アドレス: https://pypi.python.org/pypi/creepy
関数インターフェース:
set_content_type_filter:
キャプチャされたコンテンツ タイプ (ヘッダーの contenttype) を設定します。 text/htmlを含める
add_url_filter:
URL をフィルターします。入力には正規表現を使用できます
set_follow_mode:
再帰モード、F_ANY を設定します。このページ上のすべてのリンクがクロールされます。 F_SAME_DOMAIN は F_SAME_HOST に似ています。つまり、同じドメイン名を持つすべてのドメインがクロールされます。 F_SAME_PATH: 同じパスから取得します。たとえば、bag.vancl.com/l1/d3/1.jpg のパスが l1/d3/1.jpg の場合、パス l1/d3/* を持つすべてのファイルがキャプチャされます。ここで、必要に応じて独自の再帰モードを追加できます
set_concurrency_level:
スレッドの最大数を設定します
プロセスドキュメント:
通常、Web ページのコンテンツを書き直して処理し、必要なコンテンツを抽出する必要があります。
セレン
ビジュアルなインターフェイス、自動クローリング、そして非常に使いやすい API により、自分でブラウザを操作しているような感覚になります。
公式ウェブサイト: http://www.seleniumhq.org/
Python公式ウェブサイト
http://pypi.python.org/pypi/selenium
webdriver api (非常に便利なので、詳しく学ぶことをお勧めします)
http://www.seleniumhq.org/docs/03_webdriver.jsp
以下は Fanke Web サイトをクロールする例です:
from selenium import webdriver from selenium.webdriver.common.keys import Keys import time browser = webdriver.Firefox() browser.get('http://bag.vancl.com/28145-28167-a18568_18571-b1-n3-s1.html#ref=hp-hp-hot-8_1_1-v:n') elem = browser.find_element_by_name('ch_bag-3-page-next') # Find the search box time.sleep(1) print elem.get_attribute("href") elem.click() time.sleep(1) elem = browser.find_element_by_name('ch_bag-3-page-next') # Find the search box print elem.get_attribute("href") elem.click()
この記事が皆さんの Python プログラミングに役立つことを願っています。