scrapyフレームワークの概要と基礎応用
3622 ワード
目次 scrapyフレームワークの概要と基礎応用 取付 基本用法 1.プロジェクトの作成:scrapy startprojectプロジェクト名 2.爬虫類アプリケーションの作成: 3.爬虫類ファイルの作成: 4.設定変更settings.pyプロファイル関連構成: 5.爬虫類プログラムの実行:scrapy crawlアプリケーション名 小試牛刀:恥ずかしい百トップページの中のネタの内容とタイトルを に登る
scrapyフレームワークの概要と基礎応用
Scrapyとは? Scrapyは、Webサイトのデータを取得し、構造的なデータを抽出するために作成されたアプリケーションフレームワークであり、非常に有名で、非常に強い.フレームワークとは,様々な機能(高性能非同期ダウンロード,キュー,分散,解析,持続化など)が統合された汎用性の高いプロジェクトテンプレートである.フレームワークの学習には,そのフレームワークの特性,各機能の使い方を学習することに重点を置く.
インストール
Linux:
Windows:
基本的な使い方
1.プロジェクトの作成:scrapy startprojectプロジェクト名
プロジェクト構造:
2.爬虫類アプリケーションの作成:
cd project_name(プロジェクトディレクトリに入る)
scrapy genspiderアプリケーション名Webページの開始url(例:scrapy genspider qiubai www.qiushibaike.com)
3.爬虫類ファイルの作成:
ステップ2の実行が完了すると、プロジェクトのspidersにアプリケーション名のpy爬虫類ファイルが生成され、ファイルソースは次のようになります.
4.設定変更settings.pyプロファイル関連構成:
5.爬虫類プログラムの実行:scrapy crawlアプリケーション名
小试牛刀:耻ずかしい百トップページの中のネタの内容とタイトルを爬取する
爬虫類プログラムの実行:
転載先:https://www.cnblogs.com/konghui/p/10809256.html
scrapyフレームワークの概要と基礎応用
Scrapyとは?
インストール
Linux:
pip3 install scrapy
Windows:
:
a. pip3 install wheel
b. twisted http://www.lfd.uci.edu/~gohlke/pythonlibs/#twisted
c. , pip3 install Twisted‑17.1.0‑cp35‑cp35m‑win_amd64.whl
d. pip3 install pywin32
e. pip3 install scrapy
基本的な使い方
1.プロジェクトの作成:scrapy startprojectプロジェクト名
プロジェクト構造:
project_name/
scrapy.cfg:
project_name/
__init__.py
items.py
pipelines.py
settings.py
spiders/
__init__.py
scrapy.cfg 。( settings.py )
items.py , , :Django Model
pipelines
settings.py , : 、 ,
spiders , : ,
2.爬虫類アプリケーションの作成:
cd project_name(プロジェクトディレクトリに入る)
scrapy genspiderアプリケーション名Webページの開始url(例:scrapy genspider qiubai www.qiushibaike.com)
3.爬虫類ファイルの作成:
ステップ2の実行が完了すると、プロジェクトのspidersにアプリケーション名のpy爬虫類ファイルが生成され、ファイルソースは次のようになります.
# -*- coding: utf-8 -*-
import scrapy
class QiubaiSpider(scrapy.Spider):
name = 'qiubai' #
# ( url )
allowed_domains = ['https://www.qiushibaike.com/']
# url
start_urls = ['https://www.qiushibaike.com/']
# URL , response url , . NUll
def parse(self, response):
print(response.text) #
print(response.body)#
4.設定変更settings.pyプロファイル関連構成:
:
19 :USER_AGENT = 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_12_0) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/68.0.3440.106 Safari/537.36' #
22 :ROBOTSTXT_OBEY = False # robots
5.爬虫類プログラムの実行:scrapy crawlアプリケーション名
小试牛刀:耻ずかしい百トップページの中のネタの内容とタイトルを爬取する
# -*- coding: utf-8 -*-
import scrapy
class QiubaiSpider(scrapy.Spider):
name = 'qiubai'
allowed_domains = ['https://www.qiushibaike.com/']
start_urls = ['https://www.qiushibaike.com/']
def parse(self, response):
#xpath response , xpath
odiv = response.xpath('//div[@id="content-left"]/div')
content_list = [] #
for div in odiv:
#xpath , Selector 。 Selector , extract() Selecor 。
author = div.xpath('.//div[@class="author clearfix"]/a/h2/text()')[0].extract()
content=div.xpath('.//div[@class="content"]/span/text()')[0].extract()
#
dic={
' ':author,
' ':content
}
# content_list
content_list.append(dic)
return content_list
爬虫類プログラムの実行:
scrapy crawl :
scrapy crawl --nolog:
転載先:https://www.cnblogs.com/konghui/p/10809256.html