吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 8012|回复: 60
收起左侧

[Python 转载] Python爬图源码,小虫子真的可以为所欲为!有福利哦!!!

  [复制链接]
小心boss 发表于 2019-11-28 16:47
本帖最后由 小心boss 于 2019-11-28 23:05 编辑

################################################
前段时间开始自学Python,目前处于新手阶段.
试着写了了个爬虫,分享一下.
有没有也在学Python的,共勉!

################################################
老司机的身份被人拆穿了。。。╮( ̄▽ ̄")╭

之前贴的代码好像有点问题,改了下.感谢各位大佬.
有用的话,请个热心.谢谢--2019 11.28  22:28






[Python] 纯文本查看 复制代码
# -*- coding=utf-8 -*-
'''   
人生苦短,我用Python
'''
###以此怀念###
import time
import requests
import re
import lxml
import os
from bs4 import BeautifulSoup
####################################
url = 'https://www.mzitu.com/all'  # 需要爬取的网页地址
headers = {'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:70.0) Gecko/20100101 Firefox/70.0',
           'Accept': "text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8",
           'Accept-Encoding': 'gzip',
            "Referer": "https://www.mzitu.com/all"
           }    # 创建头部信息
def get(url):      #发送网络请求
    a= requests.get(url,headers=headers)
    html = a.text
    return html

def main():
    soup = BeautifulSoup(get(url),'lxml')       #解析爬取网址
    all_url = soup.find('div',class_='all').find_all('a') #过滤数据到all_url列表中
    for mulu in all_url:    #遍历url列表
        if mulu.get_text() == '早期图片':
            continue
        else:
            result = {
                'title': mulu.get_text(),
                'link': mulu.get('href'),
                'ID': re.findall('\d+', mulu.get('href'))
            }  #过滤出字典
        mulu_url = result['link']
        print('读取图帖链接:', mulu_url)
        soup2 = BeautifulSoup(get(mulu_url), 'lxml')    #解析字典中的目录地址
        img_mulu = soup2.find("div", {"class": "main-image"}).find("img")['src']        #匹配图片地址
        page = soup2.find_all("span")[9]        #取图贴页数
        max_page = page.get_text()
        os.chdir(img_dir)
        new_dir(result['title'])
        for j in range(1,int(max_page) + 1):
            next_img_page = mulu_url + '/' + str(j)
            img_html = BeautifulSoup(get(next_img_page), 'lxml')
            #图片链接
            img_url = img_html.find("div", {"class": "main-image"}).find("img")['src']
            #图片名
            img_name = result['title']+str(j)
            # 下载图片
            down(img_name,img_url)
            print('图片地址: ',img_url)
            time.sleep(yanshi)

def down(name,image):
    f = open(name + '.jpg','wb+')
    img = requests.get(image,headers=headers)
    if str(img) == '<Response [200]>':
        print('下载图片...',end='')
        f.write(img.content)
    f.close()

def new_dir(name):  #创建文件夹
    if os.path.exists(name):
        print('文件夹已存在')
        os.chdir(name)
    else:
        print('创建文件夹: {}'.format(name))
        os.mkdir(name)
        os.chdir(name)

if __name__ == '__main__':
    img_dir = 'f:\学习资料'  # 设定存储爬取图片的路径
    new_dir(img_dir)
    yanshi = 0.5            #设定抓取图片延时(0.5秒)
    main()



#######The End   2019 11.28  22:28     ###################

免费评分

参与人数 8吾爱币 +7 热心值 +7 收起 理由
、陌生 + 1 + 1 用心讨论,共获提升!
少林大虾 + 1 + 1 谢谢@Thanks!
gaohaha + 1 热心回复!
a337100 + 1 + 1 热心回复!
修谱诺斯 + 1 + 1 用心讨论,共获提升!
ghhggg + 1 热心回复!
pj2016 + 1 + 1 人才!
梦哥 + 1 + 1 我很赞同!

查看全部评分

本帖被以下淘专辑推荐:

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

likeme 发表于 2019-12-2 09:50
小心boss 发表于 2019-11-30 14:00
我后面加了断点继续... 要的话,我把代码贴上来.

麻烦你贴一下。

另外,现在这一刻,会出现错误:

读取图帖链接: https://www.mzitu.com/211657
Traceback (most recent call last):
  File "mzitu.py", line 85, in <module>
    main()
  File "mzitu.py", line 40, in main
    img_mulu = soup2.find("div", {"class": "main-image"}).find("img")['src']        #匹配图片地址
AttributeError: 'NoneType' object has no attribute 'find'
13450774262 发表于 2019-11-28 21:20
小心boss 发表于 2019-11-28 21:11
昨天跑了一晚上,没问题的,你这边报多少什么错

Traceback (most recent call last):
  File "D:/desktop/mzitu.py", line 76, in <module>
    main()
  File "D:/desktop/mzitu.py", line 49, in main
    down(img_name, img_url)
  File "D:/desktop/mzitu.py", line 55, in down
    f = open(name + '.jpg', 'wb+')
FileNotFoundError: [Errno 2] No such file or directory: '酒店约会小热巴,真实情境满足你对丝足美腿的幻想1.jpg'
>>>
头像被屏蔽
xqwluo 发表于 2019-11-28 17:00
工程欧巴 发表于 2019-11-28 17:01
支持一下
Patacea 发表于 2019-11-28 17:05
学习学习,支持一下
头像被屏蔽
xqwluo 发表于 2019-11-28 17:05
提示: 作者被禁止或删除 内容自动屏蔽
x_kotaku 发表于 2019-11-28 17:08
卧槽,你爬的什么网站。。。
hgzyyl 发表于 2019-11-28 17:19
学习学习,支持一下
可坏 发表于 2019-11-28 17:22
支持下   哈哈哈哈
修谱诺斯 发表于 2019-11-28 17:30

谢谢分享!
wysheep 发表于 2019-11-28 17:32
微信截图_20191128173049.png

执行报错了
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2024-11-26 09:30

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表