python3.5.2爬虫
话不多说,都在代码里
#下载斗鱼颜值栏目主播照片
#author:ives
#date:2016-8-28 21:58
#e-mail:renhanlinbsl@163.com
import urllib.request
import string
import re
import json
import sys,os
url="http://capi.douyucdn.cn/api/v1/getColumnRoom/8?offset="
urlAfter="&limit=30&client_sys=android"
offset=0
#下载的张数
count=1
#获取当前脚本路径
def cur_file_dir():
path=sys.path[0]
if os.path.isdir(path):
return path
elif os.path.isfile(path):
return os.path.dirname(path)
#获取网页json
def getHtml(url):
page=urllib.request.urlopen(url)
html=page.read()
#解决编码问题
return html.decode("UTF-8")
#下载图片
def downLoadImg(url):
#截取文件名
file=open(downLoadUrl+url.split("/")[-1],'wb')
img=urllib.request.urlopen(url)
buf=img.read()
file.write(buf)
return
#动态生成路径
def getLink(url):
response=getHtml(url)
#处理中文编码问题
response = response.encode('latin-1').decode('unicode_escape')
jsonText=json.loads(response)
#获取所有的数据
test=jsonText["data"]
for i in test:
#获取图片路径
src=i["vertical_src"]
downLoadImg(src)
global count
print("已下载"+str(count)+"张"+src+"-*-"+str(offset))
count=count+1
return
######################################################
#获取下载目录
downLoadUrl=cur_file_dir()+"/"
#动态修改offset获取更多图片
while(True):
finalUrl=url+str(offset)+urlAfter
getLink(url)
offset=offset+20
联系我:renhanlinbsl@163.com
2016-8-30
21:49
python3.5.2爬虫的更多相关文章
- Python3编写网络爬虫11-数据存储方式四-关系型数据库存储
关系型数据库存储 关系型数据库是基于关系模型的数据库,而关系模型是通过二维表保存的,所以它的存储方式就是行列组成的表.每一列是一个字段,每一行是一条记录.表可以看作某个实体的集合,而实体之间存在联系, ...
- Python3之网络爬虫<0>初级
由于Python3合并URLib与URLlib2统一为URLlib,Python3将urlopen方法放在了urllib.request对象下. 官方文档:https://docs.python.or ...
- python3下scrapy爬虫(第一卷:安装问题)
一般爬虫都是用urllib包,requests包 配合正则.beautifulsoup等包混合使用,达到爬虫效果,不过有框架谁还用原生啊,现在我们来谈谈SCRAPY框架爬虫, 现在python3的兼容 ...
- python3 黑板客爬虫闯关游戏(一)
这是学习python爬虫练习很好的网站,强烈推荐! 地址http://www.heibanke.com/lesson/crawler_ex00/ 第一关猜数字 很简单,直接给出代码 import ur ...
- python3实现简单爬虫功能
本文参考虫师python2实现简单爬虫功能,并增加自己的感悟. #coding=utf-8 import re import urllib.request def getHtml(url): page ...
- 学习Python3 天眼查 爬虫
刚开始学习Python,不愿意看基础,记忆不好,那些语法记不住,直接上个项目,这样比较深刻 刚好公司有个情况要查企业的信息,就想做个爬虫吧,有验证码的不愿意搞,那是个老大难问题,就选择了天眼查 过程都 ...
- python3编写网络爬虫23-分布式爬虫
一.分布式爬虫 前面我们了解Scrapy爬虫框架的基本用法 这些框架都是在同一台主机运行的 爬取效率有限 如果多台主机协同爬取 爬取效率必然成倍增长这就是分布式爬虫的优势 1. 分布式爬虫基本原理 1 ...
- python3编写网络爬虫22-爬取知乎用户信息
思路 选定起始人 选一个关注数或者粉丝数多的大V作为爬虫起始点 获取粉丝和关注列表 通过知乎接口获得该大V的粉丝列表和关注列表 获取列表用户信息 获取列表每个用户的详细信息 获取每个用户的粉丝和关注 ...
- python3编写网络爬虫21-scrapy框架的使用
一.scrapy框架的使用 前面我们讲了pyspider 它可以快速的完成爬虫的编写 不过pyspider也有一些缺点 例如可配置化不高 异常处理能力有限对于一些反爬虫程度非常强的网站 爬取显得力不从 ...
- python3编写网络爬虫20-pyspider框架的使用
二.pyspider框架的使用 简介 pyspider是由国人binux 编写的强大的网络爬虫系统 github地址 : https://github.com/binux/pyspider 官方文档 ...
随机推荐
- 更新jar包中的MANIFEST.MF
当前目录存在lib.jar和MANIFEST.MF文件,在当前目录下执行: jar -uvfm lib.jar MANIFEST.MF 如果lib.jar里存在META-INF/MANIFEST.MF ...
- The file 'MemoryStream' is corrupted! 的解决办法
The file 'MemoryStream' is corrupted! Remove it and launch unity again! [Position > ] 有时候我们会遇到这个报 ...
- 写出几种IE6 BUG的解决方法
1.双边距BUG float引起的 使用display:inline 2.3像素问题 使用多个float和注释引起的 使用dislpay:inline -3px 3.超链接hover 点击后失效 ...
- HDU 3487 Play with Chain(Splay)
题目大意 给一个数列,初始时为 1, 2, 3, ..., n,现在有两种共 m 个操作 操作1. CUT a b c 表示把数列中第 a 个到第 b 个从原数列中删除得到一个新数列,并将它添加到新数 ...
- MAC 入门
1.安装java jdk eclipse 后发现运行不了,原因是JAVA_HOME 没有设置,真操蛋 export JAVA_HOME=`/usr/libexec/java_home` 2.安装bre ...
- WINDOWS 2008Server 配置nginx 反向代理服务器
本案例有用过可行 0.先要在域名官网上面配置域名对应的IP地址,然后要在自己路由器上面将80端口映射到要装nginx服务器的IP地址. 1.从官网上面下载nginx1.6.2 WINDOWS版本的 ...
- 托管调试助手“NonComVisibleBaseClass”检测到问题
最近 一次在研究 自动化测试框架White ,程序总是报 “托管调试助手“NonComVisibleBaseClass”在“d:\xxxxxxxxxx.vshost.exe”中检测到问题.” 其他 ...
- ruby -- 进阶学习(十六)ckeditor去除“浏览服务器”按钮
FROM:http://blog.163.com/zjc_8886/blog/static/2408175201011222590967/ 实现方法: 由于ckeditor中的"上传图片& ...
- C# 5.0 新特性——Async和Await使异步编程更简单
http://www.cnblogs.com/zhili/archive/2013/05/15/csharp5asyncandawait.html http://blog.zhaojie.me/201 ...
- HMM 自学教程(六)维特比算法
本系列文章摘自 52nlp(我爱自然语言处理: http://www.52nlp.cn/),原文链接在 HMM 学习最佳范例,这是针对 国外网站上一个 HMM 教程 的翻译,作者功底很深,翻译得很精彩 ...