您好,登錄后才能下訂單哦!
這篇文章主要介紹python多線程如何秒爬貓眼電影,文中介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們一定要看完!
通過(guò)python3的多線程,獲取貓眼電影top100電影清單,并保存信息到本地,使用了requests庫(kù)和正則表達(dá)式
#!/usr/bin/env python # -*- coding: utf-8 -*- # @Author: Aiker Zhao # @Date : 2019/4/2 2:52 AM # @File : pamaoyan.py # @Desc : import requests from requests.exceptions import RequestException import re import json from multiprocessing import Pool def get_one_page(url): try: response = requests.get(url) if response.status_code == 200: return response.text return None except RequestException: return None def parse_one_page(html): pattern = re.compile('<dd>.*?board-index.*?>(\d+)</i>.*?data-src="(.*?)".*?name"><a.*?>(.*?)</a>.*?star">(.*?)</p>' + '.*?releasetime">(.*?)</p.*?integer">(.*?)</i>.*?fraction">(.*?)</i>.*?</dd>', re.S) pattern1 = re.compile('board-index.*?>(\d+)</i>.*?data-src="(.*?)".*?name"><a.*?>(.*?)</a>.*?star">(.*?)</p>', re.S) items = re.findall(pattern, html) # print(items) for item in items: yield { 'index': item[0], 'score': item[5] + item[6], 'image': item[1], 'title': item[2], 'actor': item[3].strip()[3:], 'time': item[4][5:] } def write_to_file(content): with open('result.txt', 'a', encoding='utf-8') as f: f.write(json.dumps(content, ensure_ascii=False) + '\n') f.close() def main(offset): url = 'https://maoyan.com/board/4?offset=' + str(offset) html = get_one_page(url) # print(html) for item in parse_one_page(html): print(item) write_to_file(item) if __name__ == '__main__': # for i in range(10): # main(i*10) pool = Pool() pool.map(main, [i * 10 for i in range(10)])
以上是“python多線程如何秒爬貓眼電影”這篇文章的所有內(nèi)容,感謝各位的閱讀!希望分享的內(nèi)容對(duì)大家有幫助,更多相關(guān)知識(shí),歡迎關(guān)注億速云行業(yè)資訊頻道!
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。