Python 3 網路爬蟲學習建議?

時間 2022-01-21 00:20:17

1樓:燃起

步驟:1、新建乙個scrapy專案和乙個爬蟲

scrapy startproject cnblogs

scrapy genspider cnblogs www.cnblogs.com

2、items,只爬取標題,鏈結,內容

import scrapy

class CnblogsItem(scrapy.Item):

title = scrapy.Field()

url = scrapy.Field()

content = scrapy.Field()

3、爬蟲cnbolgs.py

attr(href)').extract_firstyield Request(next解析詳情頁的函式

def parser_detail(self,responsecontent = response.css('#cnblogs_post_body').extract_firstitem = response.

meta.get('item'item['content']=content

yield item

4、pipelines,資料庫中的表要注意的是儲存內容的字段content的字段型別要設定成text(mysql),否則內容太大寫不到資料庫中就會報錯

import pymysql

class CnblogsPipeline:

def open_spider(self,spiderspider是爬蟲物件,可以根據不同的爬蟲做不同的持久化方案

print(spider.nameself.conn=pymysql.

connect( host='127.0.0.

1', user='root', password="root",database='cnblogs', port=3306)

def process_item(self,item, spidercursor=self.conn.cursorsql='insert into article (title,url,content) values (%s,%s,%s)'cursor.

execute(sql,[item['title'],item['url'],item['content'self.conn.commitreturn item

def close_spider(self,spiderself.conn.close()

2樓:我鞋呢

網路爬蟲是IO密集型任務,使用多執行緒是理想的方法,解決單執行緒的阻塞等待,

前兩天做了乙個單執行緒、多執行緒爬蟲,多程序爬蟲案例,可供練習使用。

3樓:

大家知道啥是pycatch嗎?

4樓:

中文版pdf: 圖靈社群 : 圖書 : Python網路資料採集 (支援正版)

對於爬蟲的新手推薦這本書,是python3的,已看完,雖說內容比較淺,但是涵蓋面確實挺廣的,值得一看。另外是如果對於爬蟲的流程架構不太熟悉的話,推薦慕課網上的python爬蟲教程,雖說教程使用python2 的,但是教課的老師寫爬蟲的思路還是挺不錯的,值得學習。

5樓:不努力沒未來

6樓:

requests

beautifulsoup(pyquery)

7樓:

我覺得把知道創宇部落格上那道爬蟲題完整做出來有很大收穫

8樓:星隕

還是找本書系統的看一下比較好。。。

9樓:

簡單粗暴:

網易雲課堂,搜尋Python爬蟲實戰。

有一周免費版,也有四周收費版。

既然你學的是機器學習,建議免費版之後上收費班,絕對物有所值。

隨手截了幾張課程的章節

順便 @林茜茜

利息相關:第一批學員

你看好 Python 3 嗎?

令狐蔥 不管看好還是不看好,都得追隨Python 3的腳步吧?看看官網上的說法 What are the differences?Short version Python 2.x is legacy,Python 3.x is the present and future of the langua...

Python3新手爬蟲求教?

henryPKU 如果想簡單快速上手,選個爬蟲框架就行了,scrapy 六的飛起,中文文件也很詳細。爬蟲框架用多了自然而然就有了深刻理解,而且自頂向下,會比直接寫爬蟲達到更高的抽象層次 不吃夾生飯 我也是一開始接觸到py3,隨後再py2.7,現在因為工作又繼續用py3。一開始,明白最基本那幾個庫的用...

python3 模擬登入失敗?

黃哥 headers 的資訊不全造成的,抓包,填上所有headers資訊。import urllib.request opener urllib.request.build opener opener.addheaders User agent Mozilla 5.0 opener.open htt...