国产片侵犯亲女视频播放_亚洲精品二区_在线免费国产视频_欧美精品一区二区三区在线_少妇久久久_在线观看av不卡

腳本之家,腳本語言編程技術及教程分享平臺!
分類導航

Python|VBS|Ruby|Lua|perl|VBA|Golang|PowerShell|Erlang|autoit|Dos|bat|

香港云服务器
服務器之家 - 腳本之家 - Python - Python scrapy爬取起點中文網小說榜單

Python scrapy爬取起點中文網小說榜單

2021-11-30 10:25超哥-- Python

爬蟲的基礎內容已經全部學玩,博主決定想著更加標準化以及實用能力更強的scrapy進發,今天記錄自己第一個scrapy爬蟲項目. scrapy爬取起點中文網24小時熱銷榜單,需要的朋友可以參考下

一、項目需求

爬取排行榜小說的作者,書名,分類以及完結或連載

二、項目分析

目標url:“https://www.qidian.com/rank/hotsales?style=1&page=1”

Python scrapy爬取起點中文網小說榜單

通過控制臺搜索發現相應信息均存在于html靜態網頁中,所以此次爬蟲難度較低。

Python scrapy爬取起點中文網小說榜單

通過控制臺觀察發現,需要的內容都在一個個li列表中,每一個列表代表一本書的內容。

Python scrapy爬取起點中文網小說榜單

在li中找到所需的內容

Python scrapy爬取起點中文網小說榜單

找到第兩頁的url
“https://www.qidian.com/rank/hotsales?style=1&page=1”
“https://www.qidian.com/rank/hotsales?style=1&page=2”
對比找到頁數變化
開始編寫scrapy程序。

三、程序編寫

創建項目太簡單,不說了

1.編寫item(數據存儲)

?
1
2
3
4
5
6
7
import scrapy
 
class qidianhotitem(scrapy.item):
    name = scrapy.field() #名稱
    author = scrapy.field() #作者
    type = scrapy.field() #類型
    form= scrapy.field() #是否完載

2.編寫spider(數據抓取(核心代碼))

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
#coding:utf-8
 
from scrapy import request
from scrapy.spiders import spider
from ..items import qidianhotitem
#導入下需要的庫
 
class hotsalesspider(spider):#設置spider的類
    name = "hot" #爬蟲的名稱
    qidian_header={"user-agent":"mozilla/5.0 (x11; linux x86_64) applewebkit/537.36 (khtml, like gecko) chrome/90.0.4430.93 safari/537.36"} #設置header
    current_page = 1 #爬蟲起始頁
    def start_requests(self): #重寫第一次請求
        url="https://www.qidian.com/rank/hotsales?style=1&page=1"
        yield request(url,headers=self.qidian_header,callback=self.hot_parse)
        #request發起鏈接請求
        #url:目標url
        #header:設置頭部(模擬瀏覽器)
        #callback:設置頁面抓起方式(空默認為parse)
    def hot_parse(self, response):#數據解析
        #xpath定位
        list_selector=response.xpath("//div[@class='book-mid-info']")
        #獲取所有小說
        for one_selector in list_selector:
            #獲取小說信息
            name=one_selector.xpath("h4/a/text()").extract()[0]
            #獲取作者
            author=one_selector.xpath("p[1]/a[1]/text()").extract()[0]
            #獲取類型
            type=one_selector.xpath("p[1]/a[2]/text()").extract()[0]
            # 獲取形式
            form=one_selector.xpath("p[1]/span/text()").extract()[0]
 
            item = qidianhotitem()
            #生產存儲器,進行信息存儲
            item['name'] = name
            item['author'] = author
            item['type'] = type
            item['form'] = form
 
            yield item #送出信息
 
            # 獲取下一頁url,并生成一個request請求
            self.current_page += 1
            if self.current_page <= 10:#爬取前10頁
                next_url = "https://www.qidian.com/rank/hotsales?style=1&page="+str(self.current_page)
                yield request(url=next_url,headers=self.qidian_header,callback=self.hot_parse)
 
 
    def css_parse(self,response):
        #css定位
        list_selector = response.css("[class='book-mid-info']")
        for one_selector in list_selector:
            # 獲取小說信息
            name = one_selector.css("h4>a::text").extract()[0]
            # 獲取作者
            author = one_selector.css(".author a::text").extract()[0]
            # 獲取類型
            type = one_selector.css(".author a::text").extract()[1]
            # 獲取形式
            form = one_selector.css(".author span::text").extract()[0]
            # 定義字典
 
            item=qidianhotitem()
            item['name']=name
            item['author'] = author
            item['type'] = type
            item['form'] = form
            yield  item

3.start.py(代替命令行)

在爬蟲項目文件夾下創建start.py。

Python scrapy爬取起點中文網小說榜單

?
1
2
3
4
from scrapy import cmdline
#導入cmd命令窗口
cmdline.execute("scrapy crawl hot -o hot.csv" .split())
#運行爬蟲并生產csv文件

出現類似的過程代表爬取成功。

Python scrapy爬取起點中文網小說榜單

hot.csv

Python scrapy爬取起點中文網小說榜單

總結

本次爬蟲內容還是十分簡單的因為只用了spider和item,這幾乎是所有scrapy都必須調用的文件,后期還會有middlewarse.py,pipelines.py,setting.py需要編寫和配置,以及從javascript和json中提取數據,難度較大。

到此這篇關于python scrapy爬取起點中文網小說榜單的文章就介紹到這了,更多相關python爬取起點中文網內容請搜索服務器之家以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持服務器之家!

原文鏈接:https://blog.csdn.net/weixin_50835854/article/details/117783644

延伸 · 閱讀

精彩推薦
1193
主站蜘蛛池模板: 97国产一区二区精品久久呦 | 国产电影一区二区三区图片 | 黄色大片免费网址 | 成人羞羞网站 | 亚洲精品久久久 | 超碰97免费在线 | 国产毛片一区二区 | 欧美一区二区三区精品 | 玖玖视频 | 亚洲视频一区二区三区 | 亚洲天堂免费在线 | 亚洲国产精品久久人人爱 | 特黄一级 | 免费a级毛片在线观看 | 国产激情一区二区三区 | 国产福利91精品一区二区三区 | 日韩精品一二三 | 黄色片免费观看网站 | 国产成人精品一区二 | 国产精品99久久久久久动医院 | 人人人人澡 | 国内成人自拍视频 | 日本久久久久久 | 毛片一区 | 日韩视频免费在线观看 | 福利一区二区 | 久久久久久九九 | 欧美在线a | 久久久人成影片一区二区三区 | 一区二区三区 在线 | 天天操天天舔 | 青青草综合 | 日韩欧美一级片 | 国产精品视频一区二区三区不卡 | 午夜免费视频 | 久久久久久av | 青青草免费在线视频 | 日本三级中文在线电影 | 国产一区二区三区视频 | 在线观看中文字幕 | 亚洲毛片在线 |