Python3.6 学习爬虫入门篇
2017-05-18 17:56
531 查看
直接附代码:
# -*- coding:utf-8 -*- # 糗事百科爬虫 import urllib.request import os class Crawler: # 获取HTML信息 def open_url(self, url): req = urllib.request.Request(url) # 伪装成浏览器访问 req.add_header('User-Agent', 'Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko)' ' Chrome/49.0.2623.112 Safari/537.36') response = urllib.request.urlopen(req) return response.read() # 查找图片 def find_img(self, url): # 打开地址并转码 html = self.open_url(url).decode('utf-8') # 获取html中第一个'img src='的下标 img_start = html.find('img src=') img_url_arr = [] while img_start != -1: # 从img_start到img_start + 200查找,获取第一个'.jpg'的下标 img_end = html.find('.jpg', img_start, img_start + 200) if img_end != -1: # 根据img_start和img_end截取字符串,获得img地址 img_url = html[img_start+9:img_end+4] # 加入数组 img_url_arr.append(img_url) # 获取已'.JPEG'结尾的图片 # img_end_jpeg = html.find('.JPEG', img_start, img_start + 200) # if img_end_jpeg != -1: # img_url = html[img_start+9:img_end_jpeg+5] # img_url_arr.append(img_url) # 继续查找 img_start = html.find('img src=', img_start + 9) return img_url_arr def save_img(self, img_url_arr): # 遍历数组 for img_url in img_url_arr: print("下载图片地址:%s" % img_url) # 从倒数第一个'/'到结尾截取字符串作为文件名 filename = img_url.split('/')[-1] with open(filename, 'wb') as f: # 打开地址.这里视情况而定,有些网页的图片包含"http:" img = self.open_url('http:' + img_url) f.write(img) def start_download(self, page=10): # %d处为页码,后面用%替换 url = "http://www.qiushibaike.com/imgrank/page/%d/" try: # 创建文件夹 os.mkdir('糗事百科图') except Exception: print("") # 将工作环境移动到创建的文件夹下面 os.chdir('糗事百科图') for p in range(1, page + 1): print("开始第%d页" % p) # %替换页码,获取图片地址 img_url_arr = self.find_img(url % p) # 保存图片 self.save_img(img_url_arr) crawler = Crawler() crawler.start_download(3)
相关文章推荐
- Python 爬虫如何入门学习?
- Python基础学习-爬虫入门知识
- python——爬虫学习——Scrapy爬虫框架入门-(6)
- 【Python3.6爬虫学习记录】(三)简单的爬虫实践-豆瓣《河神》演员图片及姓名
- python3 [入门基础实战] 爬虫入门之智联招聘的学习(一)
- Python 爬虫如何入门学习?
- Python爬虫入门学习--(单线程爬虫)
- python 爬虫 学习笔记(一)Scrapy框架入门
- python学习(4):python爬虫入门案例-爬取图片
- 【Python3.6爬虫学习记录】(二)使用BeautifulSoup爬取简单静态网页文章
- python python 入门学习之网页数据爬虫cnbeta文章保存
- Python爬虫入门学习例子之煎蛋网(福利哦)
- Python的爬虫程序编写框架Scrapy入门学习教程
- python3 [入门基础实战] 爬虫入门之xpath的学习
- Python 学习笔记3 - 定向爬虫入门
- python小白入门学习笔记-爬虫入门
- Python爬虫入门学习例子之糗事百科
- Python的爬虫程序编写框架Scrapy入门学习教程
- 极客 | Python | 学习笔记01:Python 定向爬虫入门
- python3 [入门基础实战] 爬虫入门之智联招聘的学习(一)