欧美一级特黄大片做受成人-亚洲成人一区二区电影-激情熟女一区二区三区-日韩专区欧美专区国产专区

Python爬蟲入門【10】:電子書多線程爬取

最近想找?guī)妆倦娮訒纯?,就翻啊翻,然后呢,找到了一個 叫做 周讀的網(wǎng)站 ,網(wǎng)站特別好,簡單清爽,書籍很多,而且打開都是百度網(wǎng)盤可以直接下載,更新速度也還可以,于是乎,我給爬了。本篇文章學習即可,這么好的分享網(wǎng)站,盡量不要去爬,影響人家訪問速度就不好了 http://www.ireadweek.com/ ,想要數(shù)據(jù)的,可以在我博客下面評論,我發(fā)給你,QQ,郵箱,啥的都可以。

讓客戶滿意是我們工作的目標,不斷超越客戶的期望值來自于我們對這個行業(yè)的熱愛。我們立志把好的技術通過有效、簡單的方式提供給客戶,將通過不懈努力成為客戶在信息化領域值得信任、有價值的長期合作伙伴,公司提供的服務項目有:空間域名、網(wǎng)絡空間、營銷軟件、網(wǎng)站建設、神木網(wǎng)站維護、網(wǎng)站推廣。

Python爬蟲入門【10】:電子書多線程爬取

Python爬蟲入門【10】:電子書多線程爬取

這個網(wǎng)站頁面邏輯特別簡單 ,我翻了翻 書籍詳情頁面 ,就是下面這個樣子的,我們只需要循環(huán)生成這些頁面的鏈接,然后去爬就可以了,為了速度,我采用的多線程,你試試就可以了,想要爬取之后的數(shù)據(jù),就在本篇博客下面評論,不要搞壞別人服務器。

http://www.ireadweek.com/index.php/bookInfo/11393.html
http://www.ireadweek.com/index.php/bookInfo/11.html
....

行行網(wǎng)電子書多線程爬取-擼代碼

代碼非常簡單,有咱們前面的教程做鋪墊,很少的代碼就可以實現(xiàn)完整的功能了,最后把采集到的內(nèi)容寫到 csv 文件里面,(csv 是啥,你百度一下就知道了) 這段代碼是IO密集操作 我們采用aiohttp模塊編寫。

第1步

拼接URL,開啟線程。

import requests

# 導入?yún)f(xié)程模塊
import asyncio
import aiohttp

headers = {"User-Agent": "Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/68.0.3440.106 Safari/537.36",
           "Host": "www.ireadweek.com",
           "Accept": "text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8"}

async def get_content(url):
    print("正在操作:{}".format(url))
    # 創(chuàng)建一個session 去獲取數(shù)據(jù) 
    async with aiohttp.ClientSession() as session:
        async with session.get(url,headers=headers,timeout=3) as res:
            if res.status == 200:
                source = await res.text()  # 等待獲取文本
                print(source)

if __name__ == '__main__':
    url_format = "http://www.ireadweek.com/index.php/bookInfo/{}.html"
    full_urllist = [url_format.format(i) for i in range(1,11394)]  # 11394
    loop = asyncio.get_event_loop()
    tasks = [get_content(url) for url in full_urllist]
    results = loop.run_until_complete(asyncio.wait(tasks))

上面的代碼可以同步開啟N多個線程,但是這樣子很容易造成別人的服務器癱瘓,所以,我們必須要限制一下并發(fā)次數(shù),下面的代碼,你自己嘗試放到指定的位置吧。

sema = asyncio.Semaphore(5)
# 為避免爬蟲一次性請求次數(shù)太多,控制一下
async def x_get_source(url):
    with(await sema):
        await get_content(url)

第2步

處理抓取到的網(wǎng)頁源碼,提取我們想要的元素,我新增了一個方法,采用lxml進行數(shù)據(jù)提取。

def async_content(tree):
    title = tree.xpath("http://div[@class='hanghang-za-title']")[0].text
    # 如果頁面沒有信息,直接返回即可
    if title == '':
        return
    else:
        try:
            description = tree.xpath("http://div[@class='hanghang-shu-content-font']")
            author = description[0].xpath("p[1]/text()")[0].replace("作者:","") if description[0].xpath("p[1]/text()")[0] is not None else None
            cate = description[0].xpath("p[2]/text()")[0].replace("分類:","") if description[0].xpath("p[2]/text()")[0] is not None else None
            douban = description[0].xpath("p[3]/text()")[0].replace("豆瓣評分:","") if description[0].xpath("p[3]/text()")[0] is not None else None
            # 這部分內(nèi)容不明確,不做記錄
            #des = description[0].xpath("p[5]/text()")[0] if description[0].xpath("p[5]/text()")[0] is not None else None
            download = tree.xpath("http://a[@class='downloads']")
        except Exception as e:
            print(title)
            return

    ls = [
        title,author,cate,douban,download[0].get('href')
    ]
    return ls

第3步

數(shù)據(jù)格式化之后,保存到csv文件,收工!

 print(data)
 with open('hang.csv', 'a+', encoding='utf-8') as fw:
     writer = csv.writer(fw)
     writer.writerow(data)
 print("插入成功!")
Python資源分享qun 784758214 ,內(nèi)有安裝包,PDF,學習視頻,這里是Python學習者的聚集地,零基礎,進階,都歡迎

行行網(wǎng)電子書多線程爬取-運行代碼,查看結果

Python爬蟲入門【10】:電子書多線程爬取

標題名稱:Python爬蟲入門【10】:電子書多線程爬取
文章鏈接:http://aaarwkj.com/article8/igchip.html

成都網(wǎng)站建設公司_創(chuàng)新互聯(lián),為您提供品牌網(wǎng)站設計、網(wǎng)站維護、虛擬主機關鍵詞優(yōu)化、網(wǎng)頁設計公司、自適應網(wǎng)站

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉載內(nèi)容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉載,或轉載時需注明來源: 創(chuàng)新互聯(lián)

小程序開發(fā)
偷拍色图一区二区二区| 国产国产乱老熟女视频网站| 人妻免费视频中文字幕| 黄片视频免费在线播放大全| 久久国产欧美日韩精品| 午夜一区二区精品视频国产| 人妻伦理一区二区三区| 杨幂一区二区在线观看| 男女裸体做爰一进一出视频| 深夜av一区二区三区| 久久久精品在线免费视频| 国产欧洲日本一区二区| av一区二区三区网站| 国产伦奸在线播放免费| 国产精品日本欧美久久久| 日韩高清精品一区二区| 91人妻精品丰满少妇区| 蜜桃精品人妻一区二区三区| 久久日韩精品人妻一区二区| 亚洲最新一区二区在线观看| 成年人网站一级黄色免费| 91口爆吞精国产对白| av欧美激情在线观看| 欧美亚洲国产精品久久久| 亚洲精品午夜在线观看| 老女人性生交大片免费| 色六月婷婷六月久久六月| 天美传媒剧国产在线观看| 日本丝袜福利在线观看| 成人在线观看av毛片| 国产精品一级在线播放| 日韩欧美亚洲一级黄片| 日本人妻久久中文字幕精品| 国产美女极度色诱视频| 欧美日韩一区二区不卡视频| 午夜视频在线播放一区二区三区| 女厕所偷拍一区二区三区| 18岁以下禁看视频网站| 日韩毛片中文字幕在线观看| 男人自拍天堂在线视频| 国产精品中文字幕第一区|