EDITORIAL
爬虫類は、自己学習プロセスは、エントリの後に片付けなければならないと感じますが、それもマークを残すこと。
(今全体を理解していなかったまで、わずか2日間の窓システム、CentOSの構成のために)Scrapyまた、独自のBaiduの環境を設定し、実際には、それは難しいことではありません
パイソンをインストールした後、PIP、PIP設定をダウンロードし、インストールして、行(pyspiderがそのように構成されている)にダウンロードピップ。
添付の主基準アドレス情報
scrapyチュートリアルでは対処 https://www.bilibili.com/video/av13663892?t=129&p=2
開発日食scrapy https://blog.csdn.net/ioiol/article/details/46745993
まずホストが日食、そこのpythonピップ環境を設定されていることを保証するために、
取付フレームscrapy方法
CMDインターフェイスを入力
::ピップupdateコマンド
--upgradeピップをインストールするPIP
:: scrapyをインストールするPIP
ピップintall scrapy
インストールが完了したら、使用することができます
cmdの環境はscrapyデモ・プロセスを作成しました
まず、ディレクトリ、ランダムな場所を作成し、そのディレクトリを入力し、scrapyを表示するコマンドモードに入ります
startprojectのプロジェクトコマンドを作成します。プロジェクト名形式scrapyのstartprojectの
genspider クローラコマンドを作成し、プロジェクトには複数のクローラを持つことができます。フォーマットscrapy genspiderの爬虫類名(と同じ名前を投写することはできません)クローラのIPアドレスの初期値を
目標は、家庭用tmoocサイドバー(のスパンの子要素のサブテキスト子要素)の内容を取得することです
tmoocホーム
サイドバーの内容
同じレベルのディレクトリにある[編集] item.py、クモの位置(コードはシンプルで、コードAを貼り付けていません)
編集test.py
コードセクション
# - * - コーディング:UTF-8 - * -
輸入scrapy
#リーダーパケットの必要性、方法は、アイテムを生成するために導入されます
demo.items輸入DemoItemから
クラスTestSpider(scrapy.Spider):
実行するときに使用する#の爬虫類名
名前=「テスト」
#制限されたドメインは、プロセスの範囲を超えて、省略することができるされていません
allowed_domains = [ ' http://www.tmooc.cn ']
#開始アドレス
start_urls = [ ' http://www.tmooc.cn/ ']
#コールバック関数
デフ(自己、応答)の解析:
#プログラムの爬虫類の性質は、応答を解析し、要求に対処することであるし、再度次のアドレスを要求します
#だから、爬虫類の主要部分は、応答オブジェクトを操作する方法にあり
ノード= response.xpath( "//のLi [する@クラス= 'サブ']")
ノード内のノードの:
同じディレクトリ内のスパイダーitems.py方法によって生成#ITEMは、辞書(ジャワ・マップ)に類似している入力
アイテム= DemoItem()
項目[ '名前'] = node.xpath( "./ A /スパン/テキスト()")。抽出物()[0]
同様のリターン、百度の詳細を#yield。
収量アイテム
test.pyをコンパイルし、クモを実行します
クロールは、クモのコマンドを実行しています。フォーマットscrapyクロール爬虫類名[-oファイル名]
-o パラメータは、代替的に、データの役割は、スパイダークロールに格納されています。ディレクトリ操作コマンドに保存されているが、CSV(Excelの表)、JSON、XML jsonl ...他の形式に保存することができます
結果は
日食開発scrapy スパイダープロジェクト
まず、そこのpython Eclipse開発環境を確保するために
Pythonの新しいプロジェクトへのデフォルトのオプション
良いディレクトリ構造を作成します。
ローカルワークスペースに、プロジェクトディレクトリを探します
単にコピーしたディレクトリに作成scrapyプロジェクトは、そのフォルダを作成するために開始されません。
デモ・ディレクトリ
へのコピー
プロジェクトディレクトリ。結果ファイルの最後の実行を削除することを忘れないでください
実行 - >実行configuretionを - >
業績