欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

python爬蟲(chóng)scrapy基本使用超詳細(xì)教程

 更新時(shí)間:2021年02月20日 10:22:57   作者:小王子愛(ài)上玫瑰  
這篇文章主要介紹了python爬蟲(chóng)scrapy基本使用,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下

一、介紹

官方文檔:中文2.3版本

下面這張圖大家應(yīng)該很熟悉,很多有關(guān)scrapy框架的介紹中都會(huì)出現(xiàn)這張圖,感興趣的再去查詢相關(guān)資料,當(dāng)然學(xué)會(huì)使用scrapy才是最主要的。

在這里插入圖片描述

二、基本使用

2.1 環(huán)境安裝

1.linux和mac操作系統(tǒng)

pip install scrapy

2.windows系統(tǒng)

  1. 先安裝wheel:pip install wheel
  2. 下載twisted:下載地址
  3. 安裝twisted:pip install Twisted‑17.1.0‑cp36‑cp36m‑win_amd64.whl(記得帶后綴)
  4. pip install pywin32
  5. pip install scrapy

3.Anaconda(推薦)

在我一開(kāi)始學(xué)python使用的就是python3.8,在安裝各種庫(kù)的時(shí)候,總會(huì)有各種報(bào)錯(cuò),真的有點(diǎn)讓人奔潰。Anaconda在安裝過(guò)程中就會(huì)安裝一些常用的庫(kù),其次,當(dāng)我們想要安裝其他庫(kù)時(shí)也很方便。當(dāng)然大家也可以選擇安裝其他的一些軟件,

在這里插入圖片描述

2.2 scrapy使用流程

這里默認(rèn)大家已經(jīng)安裝好scrapy庫(kù),大家要記得要在命令行里輸入以下命令啊。(我使用的anaconda的命令行)

創(chuàng)建工程

scrapy startproject projectName

在這里插入圖片描述
在這里插入圖片描述

進(jìn)入工程目錄:這里一定要進(jìn)入到剛才創(chuàng)建好的目錄中

cd projectName

在這里插入圖片描述

創(chuàng)建爬蟲(chóng)文件:創(chuàng)建的爬蟲(chóng)文件會(huì)出現(xiàn)在之前創(chuàng)建好的spiders文件夾下

scrapy genspider spiderName www.xxx.com

在這里插入圖片描述在這里插入圖片描述

編寫(xiě)相關(guān)代碼

執(zhí)行爬蟲(chóng)文件

scrapy crawl spiderName

在這里插入圖片描述

2.3 文件解析

import scrapy

class HelloSpider(scrapy.Spider):
 name = 'hello' # 爬蟲(chóng)名稱

 # 允許的域名:限定start_urls列表當(dāng)中哪些url可以進(jìn)行請(qǐng)求的發(fā)送
 # 通常情況下我們不會(huì)使用
 # allowed_domains = ['www.baidu.com'] 

 # 起始的url列表:scrapy會(huì)自動(dòng)對(duì)start_urls列表中的每一個(gè)url發(fā)起請(qǐng)求
 # 我們可以手動(dòng)添加我們需要訪問(wèn)的url
 start_urls = ['https://www.baidu.com/','https://www.csdn.net/']

 def parse(self, response): # 當(dāng)scrapy自動(dòng)向start_urls中的每一個(gè)url發(fā)起請(qǐng)求后,會(huì)將響應(yīng)對(duì)象保存在response對(duì)象中
 # 代碼一般是在parse方法中寫(xiě)
 print("response:",response)

在這里插入圖片描述

2.4 settings.py一些常見(jiàn)的設(shè)置

相當(dāng)于requests中的headers參數(shù)中的User-Agent

USER_AGENT = 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/88.0.4324.150 Safari/537.36 Edg/88.0.705.68'

可以忽略或者不遵守robots協(xié)議

ROBOTSTXT_OBEY = False 

只有程序出現(xiàn)錯(cuò)誤的情況下,才顯示日志文件,程序正常執(zhí)行時(shí)只會(huì)輸出我們想要的結(jié)果

LOG_LEVEL='ERROR' == scrapy crawl spiderName --nolog
//二者是等價(jià)的,當(dāng)然還是推薦使用前者

未加LOG_LEVEL='ERROR'

在這里插入圖片描述

LOG_LEVEL='ERROR'之后

在這里插入圖片描述

scrapy 爬取文件保存為CSV文件中文亂碼的解決辦法

//下面的設(shè)置可能會(huì)導(dǎo)致繁體出現(xiàn),可以逐個(gè)試一下
FEED_EXPORT_ENCODING = "gb18030"
FEED_EXPORT_ENCODING = "utf-8"
FEED_EXPORT_ENCODING = "gbk"

在這里插入圖片描述

三、實(shí)例

3.1 實(shí)例要求

目的:爬取百度網(wǎng)頁(yè)的百度熱榜

在這里插入圖片描述 

3.2 實(shí)例代碼

實(shí)例代碼

在這里插入圖片描述 

3.3 輸出結(jié)果

結(jié)果

在這里插入圖片描述

到此這篇關(guān)于python爬蟲(chóng)scrapy基本使用超詳細(xì)教程的文章就介紹到這了,更多相關(guān)python爬蟲(chóng)scrapy使用內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Python通過(guò)TensorFlow卷積神經(jīng)網(wǎng)絡(luò)實(shí)現(xiàn)貓狗識(shí)別

    Python通過(guò)TensorFlow卷積神經(jīng)網(wǎng)絡(luò)實(shí)現(xiàn)貓狗識(shí)別

    今天小編就為大家分享一篇關(guān)于Python通過(guò)TensorFlow卷積神經(jīng)網(wǎng)絡(luò)實(shí)現(xiàn)貓狗識(shí)別,小編覺(jué)得內(nèi)容挺不錯(cuò)的,現(xiàn)在分享給大家,具有很好的參考價(jià)值,需要的朋友一起跟隨小編來(lái)看看吧
    2019-03-03
  • Python發(fā)送form-data請(qǐng)求及拼接form-data內(nèi)容的方法

    Python發(fā)送form-data請(qǐng)求及拼接form-data內(nèi)容的方法

    這篇文章主要介紹了Python發(fā)送form-data請(qǐng)求及拼接form-data內(nèi)容的方法,文中采用的是requests的方式發(fā)送multipart/form-data請(qǐng)求,需要的朋友可以參考下
    2016-03-03
  • python讀取測(cè)試數(shù)據(jù)的多種方式

    python讀取測(cè)試數(shù)據(jù)的多種方式

    本文主要介紹了python讀取測(cè)試數(shù)據(jù)的多種方式,文中通過(guò)示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2021-08-08
  • Python批量處理csv并保存過(guò)程解析

    Python批量處理csv并保存過(guò)程解析

    這篇文章主要介紹了Python批量處理csv并保存過(guò)程解析,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-05-05
  • pycharm如何實(shí)現(xiàn)跨目錄調(diào)用文件

    pycharm如何實(shí)現(xiàn)跨目錄調(diào)用文件

    這篇文章主要介紹了pycharm如何實(shí)現(xiàn)跨目錄調(diào)用文件,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-02-02
  • Python利用字典將兩個(gè)通訊錄文本合并為一個(gè)文本實(shí)例

    Python利用字典將兩個(gè)通訊錄文本合并為一個(gè)文本實(shí)例

    這篇文章主要介紹了Python利用字典將兩個(gè)通訊錄文本合并為一個(gè)文本實(shí)例,具有一定借鑒價(jià)值,需要的朋友可以參考下
    2018-01-01
  • 五個(gè)Python命令使用的小妙招分享

    五個(gè)Python命令使用的小妙招分享

    平常在使用python命令過(guò)程中,基本上都是用來(lái)安裝python庫(kù)時(shí)才使用到在控制臺(tái)的python命令。然而,python命令還有更多的妙用,本文就來(lái)為大家詳細(xì)講講
    2022-07-07
  • Anaconda下安裝mysql-python的包實(shí)例

    Anaconda下安裝mysql-python的包實(shí)例

    今天小編就為大家分享一篇Anaconda下安裝mysql-python的包實(shí)例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2018-06-06
  • Anaconda安裝OpenCV的方法圖文教程

    Anaconda安裝OpenCV的方法圖文教程

    在Anaconda里安裝OpenCV的方法有很多,下面這篇文章主要給大家介紹了關(guān)于Anaconda安裝OpenCV的相關(guān)資料,文中通過(guò)實(shí)例代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2022-09-09
  • Python selenium 三種等待方式解讀

    Python selenium 三種等待方式解讀

    這篇文章主要介紹了Python selenium一定要會(huì)用selenium的等待,三種等待方式解讀的相關(guān)資料,需要的朋友可以參考下
    2016-09-09

最新評(píng)論