吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 3088|回复: 22
收起左侧

[Python 转载] 【python】萌新学习笔记之我有一个大胆的想法

[复制链接]
Jasn 发表于 2020-3-9 14:47
本帖最后由 Jasn 于 2020-3-9 14:54 编辑

      最近在学习python的一些课程,在论坛上看了很多帖子(其实也不是很多),

      其中主要是看的学习视频   Python爬虫+办公自动化+好玩DIY(更新到第10章)https://www.52pojie.cn/thread-1124349-1-1.html

      昨天开始正式实操,首先当然是下载安装软件 ,学习的@wushaominkk 大大的【Python】萌新跟我来入门Python爬虫https://www.52pojie.cn/thread-739688-1-1.html

     可能是因为是win10系统,Python3.8和PythonCharm安装完成后的环境配置异常艰辛,使用cmd下用pip安装各种库都不成功,不知道是网络还是什么问题,百度了好多方法,


     最后通过更换安装源pip install xxx -i https://pypi.tuna.tsinghua.edu.cn/simple/ 安装成功的,不知道大家有没有遇到这个问题。


  下面进入正题,


   昨天看了@zb848  大大的帖子【原创源码】【python】爬虫小白教程之回车桌面图片下载 https://www.52pojie.cn/thread-1111462-1-1.html

   感觉通俗易懂,加上这两天看的学习视频大概能看到里面的代码,这让我热血澎湃,于是我产生了一个大胆的想法

   爬取 某某bus(你应该懂的,不懂也别问,问就是违规) 的高清图片

   流程基本就是上面的大大教程里面的方法,通过F12查看源代码,然后用小箭头选取需要的图片找到图片的地址,唯一的区别就是这个高清图的地址就在里面,可以直接找到,不需要替换那一步

  在此基础上我还加了一个for循环,目的是教程后面留的作业 多级页面爬取调试的过程中还是出现过许多错误,需要细心一点


下面是代码



import os
import requests
from lxml import etree

url = "https://www.xxxxbus.xxx/"    #具体地址就不说了
headers = {
    "user-agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/78.0.3904.70 Safari/537.36"}

response = requests.get(url, headers=headers)  # 获取网页
html_str = response.content.decode()  # 将页面内容转换成字符串
html = etree.HTML(html_str)  # 构造了一个XPath解析对象并对HTML文本进行自动修正

url_list = html.xpath("//div[@class='row']/div[@id='waterfall']/div/div/a/@href")

# print(url_list)    #获取网址列表

for html_list in url_list:
    print(html_list)
    response = requests.get(html_list, headers=headers)  # 重复获取网页的几个步骤
    html_str = response.content.decode()  # 将页面内容转换成字符串
    html = etree.HTML(html_str)  # 构造了一个XPath解析对象并对HTML文本进行自动修正
    img_list = html.xpath("//div[@id='sample-waterfall']/a/@href")  # 创建图片地址列表,获取图片地址
    # print(img_list)   #到这里可打印一下看看获取到的图片地址列表是否正确,最后可注释掉这行
    img_name = html.xpath("//div[@id='sample-waterfall']/a/div/img/@title")[0].replace(" ", "")
    # print(img_name)     #到这里可打印一下看看获取到的图片名称是否正确,最后可注释掉这行

    try:

        os.mkdir("{}".format(img_name))  # 在程序目录下创建一个以“图片标题”命名的文件夹用来保存这一组图片
    except:
        pass

    for url in img_list:
        filename = url.split("/")[-1]  # 获取图片文件名,split是删除网址中/号前所有字符包括/
        #    print(filename)      #可打印一下文件名看是否获取成功,最后可注释掉这行
        f = requests.get(url, headers=headers)  # 获取网页地址
        with open("./{0}/{1}".format(img_name, filename), "wb") as code:  # 下载文件
             code.write(f.content)
        print("【{}】高清图片下载完成。".format(filename))
print("全部图片下载完成,保存在程序目录下文件夹下")



   
  基本上都是用的@zb848 大大的代码(如有侵权请联系我删掉),具体内容做了适应网址的修改,


             最后上一张效果图吧,当然不是你们想的那种效果图





涂成这样应该没问题了吧

涂成这样应该没问题了吧

get_picture.txt

2.12 KB, 下载次数: 15, 下载积分: 吾爱币 -1 CB

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

RS水果 发表于 2020-3-9 15:18
简直胡闹!


你不说网址 我怎么验证你的代码对不对


我要是换了网址,还得改xpath


那和我自己重写一遍有什么区别


我到底是看你代码来了还是自己写代码来了?


image.png

附件里的地址也是屏蔽掉的    白白扣我CB


我已经报警了!

免费评分

参与人数 2吾爱币 +2 热心值 +1 收起 理由
banxia9396 + 1 感谢发布原创作品,吾爱破解论坛因你更精彩!
m776699 + 1 + 1 已经处理,感谢您对吾爱破解论坛的支持!

查看全部评分

头像被屏蔽
zb848 发表于 2020-3-9 20:22
chuxing 发表于 2020-3-9 14:57
chinaqin 发表于 2020-3-9 15:00
不发网址,差评。。。。
Arthas-xun 发表于 2020-3-9 15:01
老哥,你这个有点危险
 楼主| Jasn 发表于 2020-3-9 15:02
chuxing 发表于 2020-3-9 14:57
我只想知道这个具体地址是什么/滑稽

我这里有卖营养快线的地址你要不要
zncliving 发表于 2020-3-9 15:06
地址没有 你好毒 你好毒毒毒毒毒   
运维穷屌丝 发表于 2020-3-9 15:12
没地址,真不懂啊!
ygiveupc 发表于 2020-3-9 15:15
我缺的是代码吗?是网址
chasl09 发表于 2020-3-9 15:19
哈哈哈,有群吗。最近我也在研究如何爬视频。没人交流难受
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

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

GMT+8, 2024-11-25 16:33

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

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