下面是代码的简单实现,变量名和方法都是跑起来就行,没有整理,有需要的可以自己整理下:

image2local:

import requests
import time
from lxml import etree
import os #存储位置
dir = 'xxxxxx' #网址地址
image_host = 'https://www.27270.com' #获取爬取列表
def get_list(page_detail=''):
#爬取列表
page = requests.get('https://www.27270.com/ent/meinvtupian/list_11_{0}.html'.format(page_detail))
#解析列表数据
image_urls = etree.HTML(page.text)
print(image_urls.xpath('/html/body/div[2]/div[7]/ul/li/a[2]/@href'))
pages = image_urls.xpath('/html/body/div[2]/div[7]/ul/li/a[2]/@href') return pages def getEntityUrl(url):
#爬取传过来的地址
page = requests.get(image_host+url)
page.keep_alive = False
image_urls = etree.HTML(page.content) try:
image = image_urls.xpath('//*[@id="picBody"]/p/a[1]/img/@src')[0]
next = image_urls.xpath('//*[@id="nl"]/a/@href')[0]
title = image_urls.xpath('/html/body/div[2]/div[2]/h1/text()')[0]
except:
return False #爬取第一张
if next.find('##')>1:
return False
else:
result = image2local(image,title,next)
return True #爬取图片
def image2local(url,title,name):
title = title.split('(')[0]
if not os.path.exists(dir + title):
os.mkdir(dir + title)
try:
image = requests.get(url)
except:
return True
# print(image.content+)
with open(dir + title+'/{0}.jpg'.format(name),'wb') as f:
f.write(image.content)
f.close()
return True if __name__ == '__main__':
x = range(1,215)
for i in x:
list = get_list(i)
for image in list:
num = 1
result = True
while result:
next = image.replace('.','_{0}'.format(num)+'.')
num = num+1
result = getEntityUrl(next)

python代码是现学现写的,大家勿喷

python如何使用request爬取图片的更多相关文章

  1. Python从网页上爬取图片

    在搜索壁纸的时候,想把壁纸保存到本地,一张一张的保存太过麻烦,所以想到用Python来爬取壁纸. 设计思路: 1.首先先去找有壁纸的网页: http://www.acfun.cn/a/ac334521 ...

  2. Python爬虫学习 - day1 - 爬取图片

    利用Python完成简单的图片爬取 最近学习到了爬虫,瞬时觉得很高大上,想取什么就取什么,感觉要上天.这里分享一个简单的爬取汽车之家文章列表的图片教程,供大家学习. 需要的知识点储备 本次爬虫脚本依赖 ...

  3. python爬虫---scrapy框架爬取图片,scrapy手动发送请求,发送post请求,提升爬取效率,请求传参(meta),五大核心组件,中间件

    # settings 配置 UA USER_AGENT = 'Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, l ...

  4. python网络爬虫之爬取图片

    今天使用requests和BeautifulSoup爬取了一些图片,还是很有成就感的,注释可能有误,希望大家多提意见: 方法一:requests import requests from bs4 im ...

  5. PYTHON 利用ImagePipeline专门爬取图片

    自定义file_path()函数,即可以原有图像文件名为名来保存,并分类保存 def file_path(self, request, response=None, info=None): image ...

  6. [python爬虫] 爬取图片无法打开或已损坏的简单探讨

    本文主要针对python使用urlretrieve或urlopen下载百度.搜狗.googto(谷歌镜像)等图片时,出现"无法打开图片或已损坏"的问题,作者对它进行简单的探讨.同时 ...

  7. 孤荷凌寒自学python第八十二天学习爬取图片2

    孤荷凌寒自学python第八十二天学习爬取图片2 (完整学习过程屏幕记录视频地址在文末) 今天在昨天基本尝试成功的基础上,继续完善了文字和图片的同时爬取并存放在word文档中. 一.我准备爬取一个有文 ...

  8. 孤荷凌寒自学python第八十一天学习爬取图片1

    孤荷凌寒自学python第八十一天学习爬取图片1 (完整学习过程屏幕记录视频地址在文末) 通过前面十天的学习,我已经基本了解了通过requests模块来与网站服务器进行交互的方法,也知道了Beauti ...

  9. 爬取图片过程遇到的ValueError: Missing scheme in request url: h 报错与解决方法

    一 .scrapy整体框架 1.1 scrapy框架图 1.2 scrapy框架各结构解析 item:保存抓取的内容 spider:定义抓取内容的规则,也是我们主要编辑的文件 pipelines:管道 ...

随机推荐

  1. 随笔:JS对象无new构造原理

    var myFun = function(words) { if (!(this instanceof myFun)) { return new myFun(words); } this.name = ...

  2. [Object Tracking] MeanShift

    使用Opencv中均值漂移meanShift跟踪移动目标 Opencv均值漂移pyrMeanShiftFiltering彩色图像分割流程剖析 Opencv目标跟踪—CamShift算法 MeanShi ...

  3. [OpenCV] Samples 14: kalman filter

    Ref: http://blog.csdn.net/gdfsg/article/details/50904811 #include "opencv2/video/tracking.hpp&q ...

  4. docker学习网站

    https://yeasy.gitbooks.io/docker_practice/content/compose/install.html docker compose scal 的应用举例 htt ...

  5. jstat 简介

      1. jstat -gc pid 可以显示gc的信息,查看gc的次数,及时间. 其中最后五项,分别是young gc的次数,young gc的时间,full gc的次数,full gc的时间,gc ...

  6. SQL Server 端口号的使用

    SQL Server 端口号的使用 服务器地址  逗号 端口号 服务器地址,端口号 xxx.xxx.xxx.xxx,0000 www.xxx.com,1533  (1533是SQL Server 的端 ...

  7. [原]openstack-kilo--issue(十一)Failed connect to 169.254.169.254:80; No route to host

    本博客已经添加"打赏"功能,"打赏"位置位于右边栏红色框中,感谢您赞助的咖啡. # curl http://169.254.169.254/latest/use ...

  8. 深入web开发之webserver/servlet容器

    可能按照书上的demo,自己就能做个小型网站,但是在并发下是什么情况呢?生成了多少对象?对象的关系又是什么?这些问题都要慢慢弄清楚. ------作为后端工程师,不仅要会增删改查,还要了解servle ...

  9. E - 棋盘问题

    在一个给定形状的棋盘(形状可能是不规则的)上面摆放棋子,棋子没有区别.要求摆放时任意的两个棋子不能放在棋盘中的同一行或者同一列,请编程求解对于给定形状和大小的棋盘,摆放k个棋子的所有可行的摆放方案C. ...

  10. .NET学习从入门到精通100+源代码(申明:来源于网络)

    .NET学习从入门到精通100+源代码大放送 (20161128更新)(申明:来源于网络) 地址:http://download.csdn.net/album/detail/3364