国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

網(wǎng)絡(luò)爬蟲丨基于scrapy+mysql爬取博客信息

這篇具有很好參考價(jià)值的文章主要介紹了網(wǎng)絡(luò)爬蟲丨基于scrapy+mysql爬取博客信息。希望對(duì)大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請(qǐng)大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問。

寫在前面

本期內(nèi)容:基于scrapy+mysql爬取博客信息并保存到數(shù)據(jù)庫中

實(shí)驗(yàn)需求

  • anaconda丨pycharm
  • python3.11.4
  • scrapy
  • mysql

項(xiàng)目下載地址:https://download.csdn.net/download/m0_68111267/88740730

實(shí)驗(yàn)描述

本次實(shí)驗(yàn)實(shí)現(xiàn)了:使用Scrapy框架爬取博客專欄的目錄信息并保存到MySQL數(shù)據(jù)庫中,實(shí)驗(yàn)主要涉及到Python的爬蟲技術(shù)以及MySQL的基本操作,需要有一定的基礎(chǔ)。

實(shí)驗(yàn)框架

  • Scrapy

網(wǎng)絡(luò)爬蟲丨基于scrapy+mysql爬取博客信息,《 Python實(shí)戰(zhàn)項(xiàng)目100例 》,scrapy,mysql,數(shù)據(jù)庫

實(shí)驗(yàn)需求

  • Scrapy: Scrapy是一個(gè)基于Python的開源網(wǎng)絡(luò)爬蟲框架,用于快速、高效地獲取網(wǎng)頁數(shù)據(jù)。它具有強(qiáng)大的抓取能力,支持多線程和分布式爬蟲,能夠并行爬取多個(gè)網(wǎng)頁。Scrapy提供了方便的API和豐富的功能,可以自定義爬蟲規(guī)則和處理流程,支持?jǐn)?shù)據(jù)的持久化存儲(chǔ)和導(dǎo)出。它還提供了可視化的調(diào)試工具和強(qiáng)大的反爬蟲策略,可以幫助開發(fā)者更輕松地構(gòu)建和管理網(wǎng)絡(luò)爬蟲。Scrapy是一個(gè)成熟、穩(wěn)定和廣泛應(yīng)用的爬蟲框架,被廣泛用于數(shù)據(jù)抓取、搜索引擎和大數(shù)據(jù)分析等領(lǐng)域。
  • MySQL: MySQL是一個(gè)開源的關(guān)系型數(shù)據(jù)庫管理系統(tǒng),由Oracle Corporation開發(fā)和維護(hù)。它具有高性能、可靠性和穩(wěn)定性,能夠在各種不同規(guī)模的應(yīng)用中存儲(chǔ)和管理大量的數(shù)據(jù)。MySQL使用SQL語言進(jìn)行數(shù)據(jù)操作和查詢,支持多用戶并發(fā)操作和事務(wù)處理,提供了豐富的功能和靈活的配置選項(xiàng)。它可以在多種操作系統(tǒng)上運(yùn)行,并且與多種編程語言和開發(fā)工具兼容。MySQL被廣泛應(yīng)用于Web應(yīng)用、企業(yè)級(jí)應(yīng)用和大數(shù)據(jù)分析等領(lǐng)域。

實(shí)驗(yàn)內(nèi)容

1.安裝依賴庫

本次實(shí)驗(yàn)需要安裝scrapy庫,如果沒有scrapy庫的話可以運(yùn)行下面的命令進(jìn)行安裝哦~

pip install -i https://pypi.tuna.tsinghua.edu.cn/simple scrapy

2.創(chuàng)建Scrapy項(xiàng)目

  1. 在終端輸入以下命令可以創(chuàng)建一個(gè)scrapy項(xiàng)目:
scrapy startproject myblog
  1. 項(xiàng)目框架如下:(此時(shí)你們應(yīng)該沒有"db.py"和"sp_blogs.py"文件)

網(wǎng)絡(luò)爬蟲丨基于scrapy+mysql爬取博客信息,《 Python實(shí)戰(zhàn)項(xiàng)目100例 》,scrapy,mysql,數(shù)據(jù)庫

  • spiders:spiders 文件夾是 Scrapy 框架中存放爬蟲代碼的目錄。在 spiders 文件夾中,會(huì)包含一個(gè)或多個(gè) Python 文件,每個(gè) Python 文件代表一個(gè)獨(dú)立的爬蟲。每個(gè)爬蟲文件都需要繼承自 Scrapy 的 Spider 類,并定義爬蟲的名稱、起始 URL、解析頁面的方法等。在爬蟲文件中,還可以定義一些其他的屬性和方法,來實(shí)現(xiàn)對(duì)網(wǎng)頁的抓取和解析。Scrapy 框架通過讀取 spiders 文件夾中的爬蟲文件來識(shí)別和啟動(dòng)爬蟲。在運(yùn)行爬蟲時(shí),可以指定要運(yùn)行的爬蟲名稱,Scrapy 將會(huì)找到對(duì)應(yīng)的爬蟲文件并執(zhí)行相應(yīng)的代碼。spiders 文件夾是 Scrapy 爬蟲的核心部分,開發(fā)者可以根據(jù)需要在該文件夾下創(chuàng)建多個(gè)爬蟲文件,以支持同時(shí)抓取和解析多個(gè)網(wǎng)站。
  • items.py:items.py文件是Scrapy框架中用于定義數(shù)據(jù)模型的文件,用于指定爬取的數(shù)據(jù)結(jié)構(gòu)。它定義了爬蟲需要爬取和保存的數(shù)據(jù)字段,類似于數(shù)據(jù)庫表的結(jié)構(gòu),方便數(shù)據(jù)的提取和存儲(chǔ)。在items.py文件中,使用Python的類來定義數(shù)據(jù)模型,每個(gè)類的屬性對(duì)應(yīng)一個(gè)需要爬取和保存的字段。
  • middlewares.py:middlewares.py文件是Scrapy框架中用于處理請(qǐng)求和響應(yīng)的中間件文件。中間件是Scrapy框架的一個(gè)重要組成部分,用于對(duì)請(qǐng)求進(jìn)行預(yù)處理、對(duì)響應(yīng)進(jìn)行處理或者是處理異常情況。middlewares.py文件中定義了多個(gè)中間件類,每個(gè)中間件類都有特定的功能,例如設(shè)置請(qǐng)求頭、代理設(shè)置、處理重定向等。通過在settings.py中配置中間件的順序,Scrapy框架會(huì)按照順序依次使用不同的中間件對(duì)請(qǐng)求和響應(yīng)進(jìn)行處理。
  • pipelines.py:pipelines.py文件是Scrapy框架中用于處理數(shù)據(jù)的管道文件。在Scrapy中,管道是一個(gè)用于處理爬取到的數(shù)據(jù)的組件,可以對(duì)數(shù)據(jù)進(jìn)行清洗、驗(yàn)證、存儲(chǔ)或者是發(fā)送到其他系統(tǒng)。pipelines.py文件中定義了多個(gè)管道類,每個(gè)管道類都有特定的功能,例如將數(shù)據(jù)存儲(chǔ)到數(shù)據(jù)庫、寫入文件、發(fā)送郵件等。通過在settings.py中配置管道的優(yōu)先級(jí),Scrapy框架會(huì)按照優(yōu)先級(jí)順序依次使用不同的管道對(duì)爬取到的數(shù)據(jù)進(jìn)行處理。
  • settings.py:settings.py 文件是 Scrapy 框架中的配置文件,用于管理和配置爬蟲的各種設(shè)置選項(xiàng)。在 settings.py 文件中,可以設(shè)置爬蟲的名稱、啟用或禁用的中間件、管道、下載器、并發(fā)請(qǐng)求數(shù)、延遲、日志級(jí)別等。settings.py 文件包含了許多可配置的選項(xiàng),可以根據(jù)實(shí)際需求進(jìn)行調(diào)整。通過修改 settings.py 文件,可以改變爬蟲的行為,并對(duì)其進(jìn)行個(gè)性化定制。此外,settings.py 文件還提供了一些默認(rèn)的全局配置選項(xiàng),這些選項(xiàng)可以決定爬蟲的運(yùn)行方式和輸出結(jié)果。
  1. 在終端輸入以下命令創(chuàng)建爬蟲文件
scrapy genspider sp_blogs "https://want595.blog.csdn.net/category_12039968_1.html"

該命令將使用Scrapy生成一個(gè)名為"sp_blogs"的爬蟲,并將爬蟲的起始URL設(shè)置為"https://want595.blog.csdn.net/category_12039968_1.html"。(本次實(shí)驗(yàn)需要爬取的就是這個(gè)專欄的目錄)

輸入完這個(gè)命令后,在spiders的目錄下就會(huì)出現(xiàn)"sp_blogs.py"這個(gè)文件啦~

3.配置系統(tǒng)設(shè)置

打開"settings.py"文件,配置系統(tǒng)設(shè)置:

網(wǎng)絡(luò)爬蟲丨基于scrapy+mysql爬取博客信息,《 Python實(shí)戰(zhàn)項(xiàng)目100例 》,scrapy,mysql,數(shù)據(jù)庫
網(wǎng)絡(luò)爬蟲丨基于scrapy+mysql爬取博客信息,《 Python實(shí)戰(zhàn)項(xiàng)目100例 》,scrapy,mysql,數(shù)據(jù)庫
網(wǎng)絡(luò)爬蟲丨基于scrapy+mysql爬取博客信息,《 Python實(shí)戰(zhàn)項(xiàng)目100例 》,scrapy,mysql,數(shù)據(jù)庫

4.配置管道文件

"pipelines.py"文件,主要用于編寫代碼處理爬取的數(shù)據(jù),例如存放到文件中,數(shù)據(jù)庫中等等

# Define your item pipelines here
#
# Don't forget to add your pipeline to the ITEM_PIPELINES setting
# See: https://docs.scrapy.org/en/latest/topics/item-pipeline.html


# useful for handling different item types with a single interface
import pymysql
from twisted.enterprise import adbapi


class MyblogPipeline:

    def __init__(self, dbpool):
        self.dbpool = dbpool

    @classmethod
    def from_settings(cls, settings):
        dbparams = dict(
            host=settings['MYSQL_HOST'],  # 讀取settings中的配置
            db=settings['MYSQL_DBNAME'],
            user=settings['MYSQL_USER'],
            passwd=settings['MYSQL_PASSWD'],
            charset='utf8',  # 編碼要加上,否則可能出現(xiàn)中文亂碼問題
            cursorclass=pymysql.cursors.DictCursor,
            use_unicode=False,
        )
        dbpool = adbapi.ConnectionPool('pymysql', **dbparams)  # **表示將字典擴(kuò)展為關(guān)鍵字參數(shù),相當(dāng)于host=xxx,db=yyy....
        return cls(dbpool)  # 相當(dāng)于dbpool付給了這個(gè)類,self中可以得到

    # pipeline默認(rèn)調(diào)用
    def process_item(self, item, spider):
        query = self.dbpool.runInteraction(self.insert, item)  # 調(diào)用插入的方法
        query.addErrback(self.error, item, spider)  # 調(diào)用異常處理方法
        return item

    # 寫入數(shù)據(jù)庫中
    def insert(self, db, item):
        # print item['name']
        sql = "insert ignore into blogs(title,url) values(%s,%s)"
        params = (item["name"], item["url"])
        db.execute(sql, params)

    # 錯(cuò)誤處理方法
    def error(self, failue, item, spider):
        print(failue)

該代碼是一個(gè)Twisted框架下的MySQL數(shù)據(jù)庫存儲(chǔ)的Pipeline。Twisted是一個(gè)事件驅(qū)動(dòng)的網(wǎng)絡(luò)框架,使用異步的方式處理網(wǎng)絡(luò)請(qǐng)求。

該代碼中的MyblogPipeline類繼承自object類,并且實(shí)現(xiàn)了__init__、from_settingsprocess_item、inserterror方法。

  • __init__方法初始化了一個(gè)數(shù)據(jù)庫連接池dbpool,并將其賦值給self.dbpool

  • from_settings方法從配置文件中讀取數(shù)據(jù)庫的相關(guān)配置信息,并利用這些信息創(chuàng)建一個(gè)數(shù)據(jù)庫連接池dbpool

  • process_item方法是Pipeline默認(rèn)調(diào)用的方法,用于處理item并存儲(chǔ)到數(shù)據(jù)庫中。在該方法中,首先調(diào)用self.dbpool.runInteraction()方法創(chuàng)建一個(gè)操作數(shù)據(jù)庫的事務(wù),并調(diào)用self.insert方法將item插入到數(shù)據(jù)庫中。然后,通過addErrback方法添加了一個(gè)異常處理方法self.error

  • insert方法接收兩個(gè)參數(shù),一個(gè)是數(shù)據(jù)庫連接對(duì)象db,一個(gè)是item。在該方法中,定義了一個(gè)SQL語句和參數(shù),并通過db.execute()方法執(zhí)行了數(shù)據(jù)庫插入操作。

  • error方法用于處理插入數(shù)據(jù)庫時(shí)的異常情況,將異常信息打印出來。

總體而言,該代碼實(shí)現(xiàn)了將爬取的數(shù)據(jù)存儲(chǔ)到MySQL數(shù)據(jù)庫中的功能。

5.連接數(shù)據(jù)庫

新建一個(gè)"db.py"文件,輸入以下代碼連接到本地?cái)?shù)據(jù)庫,運(yùn)行后創(chuàng)建一個(gè)表,用于保存等會(huì)爬取的數(shù)據(jù)。

import pymysql
from scrapy.utils.project import get_project_settings  # 導(dǎo)入seetings配置


class DBHelper:

    def __init__(self):
        self.settings = get_project_settings()  # 獲取settings配置,設(shè)置需要的信息

        self.host = self.settings['MYSQL_HOST']
        self.port = self.settings['MYSQL_PORT']
        self.user = self.settings['MYSQL_USER']
        self.passwd = self.settings['MYSQL_PASSWD']
        self.db = self.settings['MYSQL_DBNAME']

    # 連接到具體的數(shù)據(jù)庫(settings中設(shè)置的MYSQL_DBNAME)
    def connectDatabase(self):
        conn = pymysql.connect(host=self.host,
                               port=self.port,
                               user=self.user,
                               passwd=self.passwd,
                               db=self.db,
                               charset='utf8')  # 要指定編碼,否則中文可能亂碼
        return conn

    # 創(chuàng)建表
    def createTable(self, sql):
        conn = self.connectDatabase()
        cur = conn.cursor()
        try:
            cur.execute(sql)
            cur.close()
            conn.close()
            print("創(chuàng)建表成功!")
        except:
            print("創(chuàng)建表失??!")
            pass

    # 插入數(shù)據(jù)
    def insert(self, sql, *params):  # 注意這里params要加*,因?yàn)閭鬟f過來的是元組,*表示參數(shù)個(gè)數(shù)不定
        conn = self.connectDatabase()
        cur = conn.cursor();
        cur.execute(sql, params)
        conn.commit()  # 注意要commit
        cur.close()
        conn.close()

if __name__ == "__main__":
    dbHelper = DBHelper()
    sql = "create table pictures(id int primary key auto_increment,name varchar(50) unique,url varchar(200))"
    dbHelper.createTable(sql)

這段代碼是一個(gè)用于操作MySQL數(shù)據(jù)庫的助手類。它使用了Scrapy框架的get_project_settings函數(shù)來獲取配置信息,然后根據(jù)配置信息連接到數(shù)據(jù)庫。

在初始化方法中,它獲取到了MySQL數(shù)據(jù)庫的主機(jī)地址、端口號(hào)、用戶名、密碼和數(shù)據(jù)庫名,并保存在實(shí)例變量中。

  • connectDatabase方法用于連接到具體的數(shù)據(jù)庫,并返回一個(gè)數(shù)據(jù)庫連接對(duì)象。

  • createTable方法用于創(chuàng)建表,它接受一個(gè)SQL語句作為參數(shù),使用數(shù)據(jù)庫連接對(duì)象執(zhí)行SQL語句來創(chuàng)建表。

  • insert方法用于插入數(shù)據(jù),它接受一個(gè)SQL語句和參數(shù)作為參數(shù),使用數(shù)據(jù)庫連接對(duì)象執(zhí)行SQL語句來插入數(shù)據(jù)。

最后在主函數(shù)中,創(chuàng)建了一個(gè)DBHelper對(duì)象,并調(diào)用createTable方法來創(chuàng)建一個(gè)名為pictures的表。

6.分析要爬取的內(nèi)容

本實(shí)驗(yàn)要爬取的是博客專欄的目錄信息:

網(wǎng)絡(luò)爬蟲丨基于scrapy+mysql爬取博客信息,《 Python實(shí)戰(zhàn)項(xiàng)目100例 》,scrapy,mysql,數(shù)據(jù)庫
網(wǎng)絡(luò)爬蟲丨基于scrapy+mysql爬取博客信息,《 Python實(shí)戰(zhàn)項(xiàng)目100例 》,scrapy,mysql,數(shù)據(jù)庫

7.編寫爬蟲文件

編寫"spiders"目錄下的"sp_blogs.py"文件,實(shí)現(xiàn)博客信息的爬取:

import scrapy
from scrapy import Selector, cmdline


class MyblogItem(scrapy.Item):
    name = scrapy.Field()
    url = scrapy.Field()


class SpBlogsSpider(scrapy.Spider):
    name = "sp_blogs"
    allowed_domains = ["want595.blog.csdn.net"]

……請(qǐng)下載后查看完整代碼哦

這段代碼是一個(gè)基于Scrapy框架的爬蟲,用于爬取一個(gè)博客網(wǎng)站的文章標(biāo)題和鏈接。

首先定義了一個(gè)MyblogItem類,它繼承自scrapy.Item,并定義了兩個(gè)字段nameurl,用于保存文章的標(biāo)題和鏈接。

然后定義了一個(gè)SpBlogsSpider類,它繼承自scrapy.Spider,表示一個(gè)具體的爬蟲。在SpBlogsSpider類中,指定了爬蟲的名字為sp_blogs,指定了允許爬取的域名為want595.blog.csdn.net,并指定了要爬取的起始URL。起始URL使用了一個(gè)循環(huán)生成器,生成了多個(gè)URL,用于爬取多頁的數(shù)據(jù)。

parse方法是默認(rèn)的回調(diào)方法,在爬取網(wǎng)頁的響應(yīng)返回后自動(dòng)被調(diào)用。在parse方法中,使用Selector對(duì)象對(duì)響應(yīng)進(jìn)行了解析,提取出了文章的標(biāo)題和鏈接,并將它們保存到MyblogItem對(duì)象中,然后通過yield返回給引擎。

最后,通過調(diào)用cmdline.execute函數(shù)來執(zhí)行爬蟲。執(zhí)行時(shí)會(huì)根據(jù)給定的參數(shù)調(diào)用對(duì)應(yīng)的爬蟲。在這里,使用'scrapy crawl sp_blogs'參數(shù)來執(zhí)行sp_blogs爬蟲。(也可以在終端項(xiàng)目的根目錄下運(yùn)行scrapy crawl sp_blogs命令來執(zhí)行爬蟲。)

運(yùn)行結(jié)果

爬取的博客信息如下:

網(wǎng)絡(luò)爬蟲丨基于scrapy+mysql爬取博客信息,《 Python實(shí)戰(zhàn)項(xiàng)目100例 》,scrapy,mysql,數(shù)據(jù)庫

寫在后面

我是一只有趣的兔子,感謝你的喜歡!

網(wǎng)絡(luò)爬蟲丨基于scrapy+mysql爬取博客信息,《 Python實(shí)戰(zhàn)項(xiàng)目100例 》,scrapy,mysql,數(shù)據(jù)庫文章來源地址http://www.zghlxwxcb.cn/news/detail-841265.html

到了這里,關(guān)于網(wǎng)絡(luò)爬蟲丨基于scrapy+mysql爬取博客信息的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場(chǎng)。本站僅提供信息存儲(chǔ)空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請(qǐng)注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請(qǐng)點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • 爬蟲學(xué)習(xí)筆記-scrapy鏈接提取器爬取讀書網(wǎng)鏈接寫入MySQL數(shù)據(jù)庫

    爬蟲學(xué)習(xí)筆記-scrapy鏈接提取器爬取讀書網(wǎng)鏈接寫入MySQL數(shù)據(jù)庫

    1.終端運(yùn)行scrapy startproject scrapy_read,創(chuàng)建項(xiàng)目 2.登錄讀書網(wǎng),選擇國學(xué)(隨便點(diǎn)一個(gè)) 3.復(fù)制鏈接(后面修改為包括其他頁) ?4.創(chuàng)建爬蟲文件,并打開 ?5.滑倒下方翻頁處,右鍵2,點(diǎn)擊檢查,查看到a標(biāo)簽網(wǎng)址,復(fù)制 6.修改爬蟲文件規(guī)則allow(正則表達(dá)式),\\\'d\\\'表示數(shù)字,\\\'+\\\'表示多個(gè),\\\'.\\\'使\\\'.\\\'生效

    2024年02月19日
    瀏覽(27)
  • 網(wǎng)絡(luò)爬蟲丨基于requests+mysql爬取貓眼熱門電影數(shù)據(jù)做可視化分析

    網(wǎng)絡(luò)爬蟲丨基于requests+mysql爬取貓眼熱門電影數(shù)據(jù)做可視化分析

    本期內(nèi)容 :基于requests+mysql爬取貓眼熱門電影數(shù)據(jù)做可視化分析 實(shí)驗(yàn)需求 anaconda丨pycharm python3.11.4 requests mysql 項(xiàng)目下載地址:https://download.csdn.net/download/m0_68111267/88737727 學(xué)習(xí)網(wǎng)絡(luò)爬蟲相關(guān)技術(shù),熟悉爬蟲基本庫requests的使用;學(xué)習(xí)數(shù)據(jù)庫技術(shù),熟悉mysql數(shù)據(jù)庫的基本操作。本文

    2024年02月02日
    瀏覽(21)
  • 基于Python的網(wǎng)絡(luò)爬蟲爬取天氣數(shù)據(jù)可視化分析

    基于Python的網(wǎng)絡(luò)爬蟲爬取天氣數(shù)據(jù)可視化分析

    目錄 摘 要 1 一、 設(shè)計(jì)目的 2 二、 設(shè)計(jì)任務(wù)內(nèi)容 3 三、 常用爬蟲框架比較 3 四、網(wǎng)絡(luò)爬蟲程序總體設(shè)計(jì) 3 四、 網(wǎng)絡(luò)爬蟲程序詳細(xì)設(shè)計(jì) 4 4.1設(shè)計(jì)環(huán)境和目標(biāo)分析 4 4.2爬蟲運(yùn)行流程分析 5 爬蟲基本流程 5 發(fā)起請(qǐng)求 5 獲取響應(yīng)內(nèi)容 5 解析數(shù)據(jù) 5 保存數(shù)據(jù) 5 Request和Response 5 Request 5

    2024年02月08日
    瀏覽(25)
  • Python爬蟲之Scrapy框架系列(21)——重寫媒體管道類實(shí)現(xiàn)保存圖片名字自定義及多頁爬取

    spider文件中要拿到圖片列表并yield item; item里需要定義特殊的字段名:image_urls=scrapy.Field(); settings里設(shè)置IMAGES_STORE存儲(chǔ)路徑,如果路徑不存在,系統(tǒng)會(huì)幫助我們創(chuàng)建; 使用默認(rèn)管道則在s

    2024年02月10日
    瀏覽(94)
  • Python爬蟲——scrapy_日志信息以及日志級(jí)別

    Python爬蟲——scrapy_日志信息以及日志級(jí)別

    日志級(jí)別(由高到低) CRITICAL: 嚴(yán)重錯(cuò)誤 ERROR: 一般錯(cuò)誤 WARNING: 警告 INFO: 一般警告 DEBUG: 調(diào)試信息 默認(rèn)的日志等級(jí)是DEBUG 只要出現(xiàn)了DEBUG或者DEBUG以上等級(jí)的日志,那么這些日志將會(huì)打印 settings.py文件設(shè)置: 默認(rèn)的級(jí)別為DEBUG,會(huì)顯示上面所有的信息 LOG_FILE:將屏幕顯

    2024年02月11日
    瀏覽(23)
  • python爬蟲進(jìn)階篇:Scrapy中使用Selenium+Firefox瀏覽器爬取滬深A(yù)股股票行情

    上篇記錄了Scrapy搭配selenium的使用方法,有了基本的了解后我們可以將這項(xiàng)技術(shù)落實(shí)到實(shí)際需求中。目前很多股票網(wǎng)站的行情信息都是動(dòng)態(tài)數(shù)據(jù),我們可以用Scrapy+selenium對(duì)股票進(jìn)行實(shí)時(shí)采集并持久化,再進(jìn)行數(shù)據(jù)分析、郵件通知等操作。 詳情請(qǐng)看上篇筆記 items middlewares setti

    2024年02月04日
    瀏覽(29)
  • scrapy爬蟲爬取多網(wǎng)頁內(nèi)容

    摘要 :此案例是爬取目標(biāo)網(wǎng)站( https://tipdm.com/ )的 新聞中心 板塊的 公司新聞 中所有新聞的標(biāo)題、發(fā)布時(shí)間、訪問量和新聞的文本內(nèi)容。 我使用的是 Anaconda prompt 我們使用如下命令創(chuàng)建scrapy項(xiàng)目: scrapy startproject spider_name 爬蟲路徑 spider_name 是項(xiàng)目的名字 爬蟲路徑 就是項(xiàng)目

    2023年04月21日
    瀏覽(29)
  • 【爬蟲】4.3 Scrapy 爬取與存儲(chǔ)數(shù)據(jù)

    目錄 1. 建立 Web 網(wǎng)站 2. 編寫數(shù)據(jù)項(xiàng)目類 3. 編寫爬蟲程序 MySpider 4. 編寫數(shù)據(jù)管道處理類 5. 設(shè)置 Scrapy 的配置文件 ????????從一個(gè)網(wǎng)站爬取到數(shù)據(jù)后,往往要存儲(chǔ)數(shù)據(jù)到數(shù)據(jù)庫中,scrapy 框架有十分方便的存儲(chǔ)方法,為了說明這個(gè)存儲(chǔ)過程,首先建立一個(gè)簡單的網(wǎng)站,然后寫

    2024年02月09日
    瀏覽(23)
  • 網(wǎng)絡(luò)爬蟲(Python:Selenium、Scrapy框架;爬蟲與反爬蟲筆記)

    網(wǎng)絡(luò)爬蟲(Python:Selenium、Scrapy框架;爬蟲與反爬蟲筆記)

    Selenium是一個(gè)模擬瀏覽器瀏覽網(wǎng)頁的工具,主要用于測(cè)試網(wǎng)站的自動(dòng)化測(cè)試工具。 Selenium需要安裝瀏覽器驅(qū)動(dòng),才能調(diào)用瀏覽器進(jìn)行自動(dòng)爬取或自動(dòng)化測(cè)試,常見的包括Chrome、Firefox、IE、PhantomJS等瀏覽器。 注意:驅(qū)動(dòng)下載解壓后,置于Python的安裝目錄下;然后將Python的安裝目

    2024年01月18日
    瀏覽(48)
  • 【python爬蟲】——?dú)v史天氣信息爬取

    【python爬蟲】——?dú)v史天氣信息爬取

    在2345天氣信息網(wǎng)2345天氣網(wǎng) 依據(jù) 地點(diǎn) 和 時(shí)間 對(duì)相關(guān)城市的歷史天氣信息進(jìn)行爬取。 網(wǎng)頁使用get方式發(fā)送請(qǐng)求,所需參數(shù)包括areaInfo[areaId]、areaInfo[areaType]、date[year]、date[month],分別為城市id、城市類型,年、月。

    2024年02月07日
    瀏覽(26)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請(qǐng)作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包