0
点赞
收藏
分享

微信扫一扫

uniapp+node.js前后端做帖子模块:分享帖子和分享页面(社区管理平台的小程序)

勇敢乌龟 03-08 19:30 阅读 2

获取信息

访问url后按f12调试

点击network

定位图片信息:

可以看到,每个图片的名字和下载地址在标红处,示例如下:

data-actualsrc=“https://pic4.zhimg.com/v2-1681ff26afbd5f92aa5790b4dee6a63f_b.jpg”

现在就是requests访问url,然后使用re正则去匹配到所有这个data-actualsrc的url

然后使用for循环批量下载这个url到本地

代码

import re
import os
import requests
url = 'https://zhuanlan.zhihu.com/p/664329877'
headers = {'user-agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/122.0.0.0 Safari/537.36'}
response = requests.get(url, headers=headers)
response.encoding = "utf-8"
# print(response.text)
parser = re.compile('data-actualsrc="(https://pic4.*?)"')
image_urls = re.findall(parser, response.text)
for image_url in image_urls:
    # print(image_url)
    image_name = image_url.split('/')[-1]
    print(f"downloading image:{image_name}")
    image_response = requests.get(image_url)
    if image_response.status_code == 200:
        with open (image_name, 'wb') as f:
            f.write(image_response.content)
        print("success")
    else:
        print("failed")
print("yes")

返回

图片都下载到了当前项目的同级目录下

这个案例print输出也是简单的,就对付一下。 

下载的路径建议使用os模块去创建个单独的目录,将图片杜下载到指定目录里

举报

相关推荐

0 条评论