python爬取网页图片(二)
从一个网页爬取图片已经解决,现在想要把这个用户发的图片全部爬取。
首先:先找到这个用户的发帖页面:
http://www.acfun.cn/u/1094623.aspx#page=1
然后从这个页面中爬取每个帖子页面的链接
然后重复(一)的过程
源码:
from urllib.request import urlopen
from urllib.request import urlretrieve
from bs4 import BeautifulSoup as da
import re
import os
import shutil
name=0
print('这是一个爬虫程序,爬取的是壁纸,下载地址是:d:/tupianpachongtest')
print('下载图片很多,若要中断:Ctrl+C-----------wanglei')
try:
os.mkdir(r'd:/tupianpachongtest')#初始化文件夹
except FileExistsError as e:
shutil.rmtree('d:/tupianpachongtest')
os.mkdir(r'd:/tupianpachongtest')
def get_urllist():#获取每期的网址
url0='http://www.acfun.cn'
urllist=[]
page=1
while page <=11:
url="http://www.acfun.cn/u/1094623.aspx#page="+str(page)
html= urlopen(url)
bs0bj=da(html,"lxml")
imglist = bs0bj.findAll("a",{"href":re.compile("/a/ac")})
#imgdict=dict(imglist.attrs)
#imgt=imgdict['herf']
#print(type(imglist))
for img in imglist:
imgdict=dict(img.attrs)
imgt=imgdict['href']
urllist.append(url0+imgt)
page +=1
return(urllist)#图片网址列表
urllist=get_urllist()
ulist=[]
def getlink(url):#获取图片链接
html= urlopen(url)
bs0bj=da(html,"lxml")
imglist = bs0bj.findAll("img",{"src":re.compile("http://imgs.*?live.*?jpg")})
for img in imglist:
imgdict=dict(img.attrs)
imgt=imgdict['src']
ulist.append(imgt)
return(ulist)
s=1
print('爬取进度:0%')
for url0 in urllist:#对每个网址提取图片链接
imgurllist=getlink(url0)
b=len(imgurllist)
#os.mkdir(r'd:/tupianpachongtest/%s'%s)
for url in imgurllist:#下载每个链接并保存
#urlretrieve(url,'d:\\tupianpachongtest\\%s\\%s.jpg'%(s,name))
urlretrieve(url,'d:\\tupianpachongtest\\%s.jpg'%name)
name+=1
#print(int((name/len(imgurllist))*100),'%')
print('爬取进度:',end='')
print(int((s/len(urllist))*100),'%')
s=s+1
python爬取网页图片(二)的更多相关文章
- 利用Python爬取网页图片
最近几天,研究了一下一直很好奇的爬虫算法.这里写一下最近几天的点点心得.下面进入正文: 你可能需要的工作环境: Python 3.6官网下载 我们这里以sogou作为爬取的对象. 首先我们进入搜狗图片 ...
- 用python 爬取网页图片
import re import string import sys import os import urllib url="http://tieba.baidu.com/p/252129 ...
- python爬取网页图片
# html:网页地址 def getImg2(html): soup = BeautifulSoup(html, 'html.parser') href_regex = re.compile(r'^ ...
- python requests库爬取网页小实例:爬取网页图片
爬取网页图片: #网络图片爬取 import requests import os root="C://Users//Lenovo//Desktop//" #以原文件名作为保存的文 ...
- java爬虫-简单爬取网页图片
刚刚接触到“爬虫”这个词的时候是在大一,那时候什么都不明白,但知道了百度.谷歌他们的搜索引擎就是个爬虫. 现在大二.再次燃起对爬虫的热爱,查阅资料,知道常用java.python语言编程,这次我选择了 ...
- Python爬取网页信息
Python爬取网页信息的步骤 以爬取英文名字网站(https://nameberry.com/)中每个名字的评论内容,包括英文名,用户名,评论的时间和评论的内容为例. 1.确认网址 在浏览器中输入初 ...
- python爬取网页的通用代码框架
python爬取网页的通用代码框架: def getHTMLText(url):#参数code缺省值为‘utf-8’(编码方式) try: r=requests.get(url,timeout=30) ...
- node:爬虫爬取网页图片
代码地址如下:http://www.demodashi.com/demo/13845.html 前言 周末自己在家闲着没事,刷着微信,玩着手机,发现自己的微信头像该换了,就去网上找了一下头像,看着图片 ...
- 如何使用python爬取网页动态数据
我们在使用python爬取网页数据的时候,会遇到页面的数据是通过js脚本动态加载的情况,这时候我们就得模拟接口请求信息,根据接口返回结果来获取我们想要的数据. 以某电影网站为例:我们要获取到电影名称以 ...
随机推荐
- dtrace
http://blog.csdn.net/lw1a2/article/details/7389323
- Node.js开发Web后台服务(转载)
原文:http://www.cnblogs.com/best/p/6204116.html 目录 一.简介 二.搭建Node.js开发环境 2.1.安装Node.js 2.2.安装IDE开发Node. ...
- Apache 处理svg工具包Apache(tm) Batik SVG Toolkit
Apache™ Batik SVG Toolkit¶ Overview¶ Batik is a Java-based toolkit for applications or applets that ...
- dubbo-admin安装和使用
更新下链接,不知道是不是这个项目合入Apache的缘故,链接都变成了https://github.com/apache/incubator-dubbo/ 按照常理,直接去 https://github ...
- 【Nginx】如何使用http配置
处理http配置项可以分为下面4个步骤: 1)创建数据结构用于存储配置项对应的参数 2)设定配置项在nginx.conf中出现时的限制条件与回调方法 3)实现第2步中的回调方法,或者使用Nginx框架 ...
- topcoder srm 550
div1 250pt: 题意:有个机器人,从某一点出发,他只有碰到地形边缘或者碰到走过的点时才会改变运动方向,然后接着走,现在给出他的运动轨迹,判断他的运动是否合法,如果合法的话,那么整个地形的最小面 ...
- centos mysql错误信息处理
mysql_secure_installation 提示错误:Enter current password for root (enter for none):ERROR 1045 (28000): ...
- BZOJ 1005 明明的烦恼 Prufer序列+组合数学+高精度
题目大意:给定一棵n个节点的树的节点的度数.当中一些度数无限制,求能够生成多少种树 Prufer序列 把一棵树进行下面操作: 1.找到编号最小的叶节点.删除这个节点,然后与这个叶节点相连的点计入序列 ...
- hdu 3183 A Magic Lamp(给一个n位的数,从中删去m个数字,使得剩下的数字组成的数最小(顺序不能变),然后输出)
1.题目大意是,给你一个1000位的数,要你删掉m个为,求结果最小数. 思路:在n个位里面删除m个位.也就是找出n-m个位组成最小数 所以在区间 [0, m]里面找最小的数.相应的下标标号i 接着找区 ...
- 湘潭邀请赛——Alice and Bob
Alice and Bob Accepted : 133 Submit : 268 Time Limit : 1000 MS Memory Limit : 65536 KB Problem ...