python3爬取猫眼电影(电影名称和图片)存到本地使用进程池
2017-06-29 16:02
447 查看
# encoding:utf-8 # 引用的是beautifulsoup 解析 from bs4 import BeautifulSoup import requests # 用的requests 获取的源码 from multiprocessing import Pool # 进程池 from requests import HTTPError # 错误处理
# 定义get_html函数用来获取源码 (url你传入的链接) def get_html(url): try: # 异常处理 head = {'User-Agent': 'Mozilla/5.0'} # 模拟请求的头部 request = requests.get(url, headers=head) # 得到你的url加入请求头 # 设置你的编码 encoding是请求头的编码 apprent_encoding 是从网页中分析响应内容的编码方式 request.encoding = request.apparent_encoding return request.content # 返回得到的内容图片是二进制的用content一般象文字类的用text except HTTPError as e: print(e) # 输出错误 return ' '
def parser_html(demo): # 接受的是你的网页源代码 # 使用beautifulsoup解析 soup = BeautifulSoup(demo, 'lxml') # 找到这个链接图片中的练级 yuan = soup.select('div.movie-poster img["data-src"]') # 找到这个标题 title = soup.select('div.channel-detail.movie-item-title > a[target="_blank"]') # 放入到字典里面 for img, title in zip(yuan, title): yuan = img['data-src'] # 得到图片的链接 title = title.get_text() # 图片的名字 yuan1 = requests.get(yuan).content # 得到图片 op = open('D:\\妹子图\\' + title + '.jpg', 'wb') # 图片是jpg的形式加上图片的名字 op.write(yuan1) # 写入图片 op.close() # 关闭文件
# 主函数 接受url def main(url): # 调用get_html得到 获取源码后赋给html html = get_html(url) # 传入到你的解析函数中 parser_html(html)
# 代码调试片段 if __name__ == '__main__': # 找到前十页的url使用的是format拼接 url = ['http://maoyan.com/films?offset={}'.format(i) for i in range(0, 271, 30)] pool = Pool(4) # 创建进程池 这个4 是指的你的内核数 pool.map(main, url) # 调用你的主函数,传入url列表
希望大家多评论,共同学习,共同进步。
相关文章推荐
- 使用Python自动下载妹子图的图片到本地
- Python爬虫(三):爬取猫眼电影网经典电影TOP100信息并存入本地Markdown文件(上)
- 使用python爬取豆瓣电影图片(-)
- 使用Python3获取360影视首页上电影的名称,年份,评价,播放链接并保存为txt文本
- Python使用Scrapy爬虫框架全站爬取图片并保存本地的实现代码
- Python:使用Scrapy框架的ImagesPipeline下载图片如何保持原图片名称呢?
- python 使用 urllib.urlretrieve()下载网络图片,在本地打开提示文件损坏无法打开
- Python使用爬虫抓取美女图片并保存到本地的方法【测试可用】
- [Python]使用Scrapy爬虫框架简单爬取图片并保存本地
- [原创]Python/Django使用富文本编辑器XHeditor上传本地图片
- 使用python将远程图片下载到本地
- Python爬虫(三):爬取猫眼电影网经典电影TOP100信息并存入本地Markdown文件(下)
- 在 Silverlight 4 中使用 OpenFileDialog 浏览本地图片
- 关于使用SharedObject来缓存游戏图片或者swf文件资源到客户端本地的研究
- 使用ThinkPHP自带的Http类下载远程图片到本地
- 在python中可以使用urllib方便的实现图片和flash下载
- 使用python处理RGBA格式的透明图片的粘贴
- 使用MFC的WinInet下载网页图片存于本地
- 使用Python编写客户端 上传文字or图片至新浪微博
- 使用python获取本地时区的几种方法