使用python抓取落网期刊图片

虽然使用python开发也将近两年了,但工作中使用python更多处理业务逻辑,数据加工等,难免有些枯燥、乏味。一直听闻python在web数据爬取、数据分析上有无可比拟的优势,于是抱着扩展下知识面,找点乐子的心理,去看了scrapy、beautifulsoup等库的说明文档。刚好有一个我一直很喜欢的电台网站,专门介绍世界各地的独立音乐,里面不定期地更新歌单,类型包括华语、电子、民谣、金属等等,在每一期都会配上一张图片,个人觉得非常特别,和期刊的主题也很搭。所以便有了下面的这个脚本,它可以帮助我把整个落网的期刊图片爬取下来,并以期刊主题命名:

#coding:gbk
import osimport bs4
import requests# 保存期刊图片的路径,你可以换成你自己的
base_dir = r"F:\落网电台"def main():start_url = 'http://www.luoo.net/music/'#os.makedirs('落网电台')parse_detail(start_url)def parse_detail(req_url):'''# 解析包含期刊图片的页面'''resp = requests.get(req_url)resp.raise_for_status()resp.encoding = 'utf-8'soup = bs4.BeautifulSoup(resp.text, 'lxml')vol_items = soup.select('div.vol-list > div > a')print('当前页面期刊div.item节点数目:[%d]'%len(vol_items))if not (vol_items and len(vol_items)):print('当前没有需要下载的期刊image..')return Truefor item in vol_items:print type(item), item.name, item.attrsvol_title = item['title']vol_num = item['href'].split('/')[-1]for child in item.children:if isinstance(child, bs4.element.Tag) and child.name == 'img':image_url = child['src']print("当前图片的链接:[%s]"%image_url)download_img(image_url, vol_num, vol_title)# 开始处理翻页page_items = soup.select('div.paginator > a.next')if page_items and len(page_items):next_page_url = page_items[0]['href']print("下一页链接:[%s]"%next_page_url)parse_detail(next_page_url)def download_img(vol_img_url, vol_num, vol_title):'''# 保存期刊图片'''print('开始下载:[%s]'%vol_img_url)resp = requests.get(vol_img_url)resp.raise_for_status() # 下载出现问题,立即抛出异常try:print vol_titlevol_title = vol_title.encode('gbk')except UnicodeEncodeError:vol_title = vol_title.encode('utf-8')image_name = 'Vol.{0} {1}.jpg'.format(vol_num, vol_title) print image_nameimage_path = os.path.join(base_dir, image_name)# 避免重复下载if os.path.exists(image_path):return image_handle = Nonetry:image_handle = open(image_path, 'wb')for chunk in resp.iter_content(10000):image_handle.write(chunk)except IOError:returnfinally:if image_handle:image_handle.close()  if __name__ == '__main__':main()


1. 下面是运行脚本后,在路径basedir下生成的期刊图片:

2. 运行此脚本,需要安装依赖库:pip install bs4

使用python抓取落网期刊图片相关推荐

  1. python抓取网站图片_python抓取图片示例 python抓取网页上图片

    python抓取网页上图片 这个错误时是什么意思 下面是代码 import re import urllib.request imp正则表达式匹配的url有错误 for x in add: print ...

  2. python自动抓取论文_用python抓取某期刊最近5年发表的所有文章的关键词和摘要...

    在学术研究中,经常需要了解某个领域的最新发展趋势,比如说,发掘最热门.上升速度最快的几个关键词.有些学术服务网站,比如Web of Science,提供类似的服务,但一些院校并没有订购这些服务,而且使 ...

  3. 【python】python 爬虫(python抓取网站的图片)

    文章目录 1.什么是爬虫 2.爬虫的思想 一些知识 1 . 环境的搭建请看: 2 . 3 .:Requests urllib的升级版本打包了全部功能并简化了使用方法(点我查看官方文档) 4 : bea ...

  4. python抓取网站的图片并下载到本地

    #!/usr/bin/python # -*- coding: UTF-8 -*- import re import urllib,urllib2;#通过url获取网页 def getHtml(url ...

  5. 使用python抓取100张人脸图片

    参考b站的一个视频,大家有兴趣可以去搜一下 注意:人脸识别分类器需要自己安装 就是这几个xml文件 运行这个程序 import cv2 import osdef CatchPICFromVideo(c ...

  6. Python抓取花瓣网图片脚本

    2019独角兽企业重金招聘Python工程师标准>>> #!/usr/bin/env python # -*- encoding:utf-8 -*- # author :insun ...

  7. python学习-抓取知乎图片

    python学习-抓取知乎图片 #!/bin/usr/env python3__author__ = 'nxz'""" 抓取知乎图片 webdriver Chromedr ...

  8. python抓取网站图片_利用python抓取网站图片

    看了网上关于python抓取网站图片的例子,所以自己也尝试着写一个,但是发现这个网站的src不是标准的路径,需要自己添加前面的目录地址,尝试了几次也不成功,所以希望有经验的朋友指导下. 本人是初学者, ...

  9. python美女源代码_单身程序员,每晚用python抓取百万张美女图片,连女友都不想找了...

    每当夜深人静时,这位长期单身的程序员就会起床开电脑,然后用python抓取百万张美女图片,存进U盘,目的目前还不知道,但技术是万能的,这样一来,可能连找女朋友的钱都省了. 其实,还有更好看的! 而且还 ...

最新文章

  1. 刷前端面经笔记(十一)
  2. git fetch和git pull之间的区别--转载
  3. [云炬创业基础笔记]第二章创业者测试6
  4. Codeforces Good Bye 2015 A. New Year and Days 水题
  5. 从零开始:什么是Makefile分析
  6. 家用工具套装_居家生活必不可少的8款五金工具,便宜又实用
  7. hive内部表和外部表的区别_HIVE拉链表实现
  8. 心路分享 | 2022暑期算法实习复盘
  9. PhotoManage
  10. c++ public protected private 继承
  11. mysql二进制还原表_MySQL 二进制文件恢复数据基础版本
  12. 深度学习图像分类(三): VggNet
  13. 用matlab的毕业设计,毕业设计课题: 用 MATLAB.ppt
  14. [计算机毕业设计]基于SM9的密钥交换方案的实现与应用
  15. 【PCB Layout】PCB布局布线经验总结
  16. 调用阿里云语音识别接口
  17. Android系统webView下载不动,Android WebView下载无法正常工作
  18. 朋友圈爱心拼图php源码_微信朋友圈九宫格爱心拼图怎么弄 拼图教程
  19. 将文件从VMWare虚拟机的Linux系统传到U盘
  20. 解决的问题记录(持续更新)

热门文章

  1. Android和iOS接入Appsflyer SDK
  2. 3D相册 效果图如下
  3. 步进电机步距角精度是什么?
  4. for语句和while循环二者无条件等价
  5. 雏凤清音——面向数据的前端编程方法
  6. 熊猫互娱破产清算,王健林又给王思聪成立新公司了?
  7. 第五届“强网”拟态防御国际精英挑战赛——特邀战队篇
  8. unity键盘控制移动操作(WASD)篇
  9. 战略支援部队信息工程大学的计算机类,战略支援部队信息工程大学2018年硕士研究生招生简章...
  10. [漏洞实战] 逻辑漏洞挖掘