爬虫:千叶网图片抓取

千叶网抓取图片

说明:抓取为千叶网首页某一类下面的加载的所有照片,url_source 链接里面的所有图片

利用xpath方式解析网址

将图片下载到本地指定文件夹

代码如下:
#导入库
import requests
from lxml import html
url_source = 'http://qianye88.com/5120x2880/'
headers = {'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/78.0.3904.108 Safari/537.36'}
import os

#获取链接函数
def get_links (url):
    response = requests.get( url, headers = headers).content
    sel = html.fromstring( response )
    return sel

#xpath方式解析网页得到图片链接和名称
url_first = get_links(url_source).xpath ('//a[@class="image"]/@href')
name_picture = sel.xpath('//a[@class="title"]/@title')
#print (name_picture)

#图片链接需要进入下一级链接才能得到大图,没有登录无法下载超高清图片
for url in url_first :
    url_total = 'http://qianye88.com' + url
    url_sec = get_links(url_total)
    url_name = url_sec.xpath('//div[@class="content-left layout fl"]/img/@src')
    pic_name = url_sec.xpath('//div[@class="content-left layout fl"]/h1/text()')
    #picture = requests.get(url_name[0],headers=headers)
    
    ##保存到本地文件夹
    root = "D:\CP\Python\Exercise\jupyter_notebook\pictureDownload\\"
    path = root+pic_name[0]+'.jpg'
    try:
        if not os.path.exists(root):
            os.mkdir(root)
        if not os.path.exists(path):
            print(url_name[0])
            r = requests.get(url_name[0],headers=headers)
            with open(path, 'wb') as f:

                f.write(r.content)
                #f = r.replace(r, "1.jpg")
                f.close()
                print("文件保存成功")
        else:
            print("文件已存在")
    except:
        print("爬去失败")
   

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值