成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專欄INFORMATION COLUMN

python正則表達(dá)式簡(jiǎn)單爬蟲入門+案例(爬取貓眼電影TOP榜)

xiaowugui666 / 786人閱讀

摘要:用迭代進(jìn)行異步操作保存寫入文件配置啟動(dòng)函數(shù)使用多進(jìn)程加速一秒完成

用正則表達(dá)式實(shí)現(xiàn)一個(gè)簡(jiǎn)單的小爬蟲 常用方法介紹 1、導(dǎo)入工具包
import requests
#導(dǎo)入請(qǐng)求模塊
from flask import json
#導(dǎo)入json模塊
from requests.exceptions import RequestException
#異常捕捉模塊
import re
#導(dǎo)入正則模塊
from multiprocessing import Pool
#導(dǎo)入進(jìn)程模塊
    
2、獲取頁面
response =requests.get(url)
url:當(dāng)前需要爬取的鏈接
requests.get()獲得頁面
3、if response.status_code ==200:
#驗(yàn)證狀態(tài)碼
response.status_code:獲取狀態(tài)碼
200:表示正常,連接成功
4、response.text:得到頁面內(nèi)容
例如:response =requests.get(url)
5、except RequestException:捕捉異常
try:
    ...
except RequestException:
    ...
6、pat = re.compile():編譯正則表達(dá)式
#正則表達(dá)式基礎(chǔ)知識(shí)即可
7、items =re.findall(pat,html)
pat:編譯過的正則表達(dá)式
html:用response.text得到的頁面內(nèi)容
re.findall():找到所有匹配的內(nèi)容
8、打開文件
with open("result","a",encoding="utf-8")as f
with as :打開自動(dòng)閉合的文件并設(shè)立對(duì)象f進(jìn)行操作
result:文件名字
a:打開方式是續(xù)寫模式
encoding:編碼格式
9、寫入文件
 f.write(json.dumps(conrent,ensure_ascii =False)+"
")
 json.dumps:以json方式寫入
10、簡(jiǎn)單進(jìn)程
pool = Pool()
#創(chuàng)建進(jìn)程池
pool.map(func,[i*10 for i in range(10)])
[i*10 for i in range(10)]:生成器,生成0到9的數(shù)字乘以10的結(jié)果,生成一個(gè)列表為[0,10,20....]
func:函數(shù)
map:將函數(shù)作用于列表每一個(gè)元素
11、yield:生成器 案例:用上面的工具完成爬去貓眼電影TOP榜
#__author:PL.Li
#導(dǎo)入需要使用的模塊
import requests
from flask import json
from requests.exceptions import RequestException
import re
from multiprocessing import Pool
#嘗試連接獲取頁面
def get_response(url):
    try:
        response =requests.get(url)
        if response.status_code ==200:
            return response.text
        return None
    except RequestException:
        return None
#正則匹配需要的內(nèi)容
def re_one_page(html):
#超級(jí)長(zhǎng)的正則表達(dá)式進(jìn)行匹配,匹配到的是個(gè)集合。  
    pat =re.compile("
.*?board-index.*?">(/d+?).*?data-src="(.*?).*?name">(.*?)"class=.*?class="star">" "(.*?)

.*?releasetime">(.*?)

.*?integer">(.*?).*?fraction">(.*?).*?
",re.S) #用迭代進(jìn)行異步操作 items =re.findall(pat,html) for item in items: yield { "index":item[0], "image":item[1], "title":item[2], "actor":item[3].strip()[3:], "time":item[4].strip(), "score":item[5]+item[6] } #保存寫入文件 def write_file(conrent): with open("result","a",encoding="utf-8")as f: f.write(json.dumps(conrent,ensure_ascii =False)+" ") f.close() #配置啟動(dòng)函數(shù) def main(offset): url ="http://maoyan.com/board"+str(offset) html=get_response(url) for item in re_one_page(html): write_file(item) #使用多進(jìn)程加速一秒完成 if __name__ == "__main__": pool = Pool() pool.map(main,[i*10 for i in range(10)])

文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://systransis.cn/yun/40841.html

相關(guān)文章

  • Python3網(wǎng)絡(luò)爬蟲實(shí)戰(zhàn)---27、Requests與正則達(dá)式抓取貓眼電影排行

    摘要:所以我們?nèi)绻氆@取電影,只需要分開請(qǐng)求次,而次的參數(shù)設(shè)置為,,,,即可,這樣我們獲取不同的頁面結(jié)果之后再用正則表達(dá)式提取出相關(guān)信息就可以得到的所有電影信息了。上一篇文章網(wǎng)絡(luò)爬蟲實(shí)戰(zhàn)正則表達(dá)式下一篇文章網(wǎng)絡(luò)爬蟲實(shí)戰(zhàn)解析庫的使用 上一篇文章:Python3網(wǎng)絡(luò)爬蟲實(shí)戰(zhàn)---26、正則表達(dá)式下一篇文章:Python3網(wǎng)絡(luò)爬蟲實(shí)戰(zhàn)---28、解析庫的使用:XPath 本節(jié)我們利用 Reque...

    SwordFly 評(píng)論0 收藏0
  • requests+正則達(dá)式+multiprocessing多線程抓取貓眼電影TOP100

    摘要:本文介紹利用庫庫和正則表達(dá)式爬取貓眼電影電影的相關(guān)信息,提取出電影名稱上映時(shí)間評(píng)分封面圖片等信息,將爬取的內(nèi)容寫入到文件中。獲取到不同的網(wǎng)頁后使用正則表達(dá)式提取出我們要的信息,就可以得到電影信息了,可以使用多線程加速爬取。 本文介紹利用Requests庫、multiprocessing庫和正則表達(dá)式爬取貓眼電影TOP100電影的相關(guān)信息,提取出電影名稱、上映時(shí)間、評(píng)分、封面圖片等信息,...

    jifei 評(píng)論0 收藏0
  • 首次公開,整理12年積累的博客收藏夾,零距離展示《收藏夾吃灰》系列博客

    摘要:時(shí)間永遠(yuǎn)都過得那么快,一晃從年注冊(cè),到現(xiàn)在已經(jīng)過去了年那些被我藏在收藏夾吃灰的文章,已經(jīng)太多了,是時(shí)候把他們整理一下了。那是因?yàn)槭詹貖A太亂,橡皮擦給設(shè)置私密了,不收拾不好看呀。 ...

    Harriet666 評(píng)論0 收藏0
  • 零基礎(chǔ)如何學(xué)爬蟲技術(shù)

    摘要:楚江數(shù)據(jù)是專業(yè)的互聯(lián)網(wǎng)數(shù)據(jù)技術(shù)服務(wù),現(xiàn)整理出零基礎(chǔ)如何學(xué)爬蟲技術(shù)以供學(xué)習(xí),。本文來源知乎作者路人甲鏈接楚江數(shù)據(jù)提供網(wǎng)站數(shù)據(jù)采集和爬蟲軟件定制開發(fā)服務(wù),服務(wù)范圍涵蓋社交網(wǎng)絡(luò)電子商務(wù)分類信息學(xué)術(shù)研究等。 楚江數(shù)據(jù)是專業(yè)的互聯(lián)網(wǎng)數(shù)據(jù)技術(shù)服務(wù),現(xiàn)整理出零基礎(chǔ)如何學(xué)爬蟲技術(shù)以供學(xué)習(xí),http://www.chujiangdata.com。 第一:Python爬蟲學(xué)習(xí)系列教程(來源于某博主:htt...

    KunMinX 評(píng)論0 收藏0
  • Requests+正則達(dá)式爬取貓眼電影

    摘要:目標(biāo)通過正則表達(dá)式爬取貓眼電影電影的排名名字電影封面圖片主演上映時(shí)間貓眼評(píng)分,將爬取的內(nèi)容寫入文件中。為了加快爬取網(wǎng)頁的速度,可以開啟循環(huán)和多線程當(dāng)需要爬取的信息很大時(shí),這是一個(gè)不錯(cuò)的技巧。 目標(biāo) 通過Request+正則表達(dá)式爬取貓眼電影TOP100電影的排名、名字、電影封面圖片、主演、上映時(shí)間、貓眼評(píng)分,將爬取的內(nèi)容寫入文件中。 流程框架 進(jìn)入到貓眼電影TOP100的頁面,此時(shí)的U...

    30e8336b8229 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

閱讀需要支付1元查看
<