这篇文章主要介绍python多线程如何秒爬猫眼电影,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!
通过python3的多线程,获取猫眼电影top100电影清单,并保存信息到本地,使用了requests库和正则表达式
#!/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多线程如何秒爬猫眼电影”这篇文章的所有内容,感谢各位的阅读!希望分享的内容对大家有帮助,更多相关知识,欢迎关注亿速云行业资讯频道!
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。