乐趣区

关于python:python爬取公众号链接里面的图片

在 python 爬虫我的项目中,更换 ip 的场景是常常的事件,这个时候代理 ip 就派上用场了,国内对于爬虫的代理 IP 服务提供商也是多如牛毛。

那么如何抉择一个适合的 IP 代理商呢,最间接的答案就是“多测试”,最近小编找了个代理平台,目前有流动能够 收费支付 1w 代理 IP,有须要的小伙伴能够扫码测试下,看看成果如何

网络聊天中,为了做一个欢畅的逗比,表情包是少不了的,小编无意间看到一个提供逗比表情包的公号,看着外面的表情不可胜数于是就想下载下来,所以就有这篇文章。

话不多说,步入明天文章的分享内容,明天给大家带来的是~~ 爬取微信公众号文章外面的图片。

爬虫代码:

# coding:utf-8
# __auth__ = "maiz"
# __date__ = "2021/3/27"
import os
import requests
from bs4 import BeautifulSoup
import datetime
import os
# url = input("请输出 url:")
url='https://mp.weixin.qq.com/s/GGw4MKXd-9bx6ty14-XXew'# 获取连贯
curr_time = datetime.datetime.now()# 获取零碎工夫
print(curr_time)# 打印工夫 测试用
headers = {'user-agent': 'Mozilla/5.0 (iPhone; CPU iPhone OS 11_0 like Mac OS X) AppleWebKit/604.1.38 (KHTML, like Gecko) Version/11.0 Mobile/15A372 Safari/604.1'}# 'cookie': 'tvfe_boss_uuid=4427f26b6d83d5d7; pgv_pvid=8192465356; pgv_pvi=2750494720; RK=cfw14pvSFY; ptcz=026939cd8bdd917551be81f3d0d2563bdb9e2d0805f4c83de8df0ea6af457e49; eas_sid=i1e690x1l8v2I68559J4e8K995; LW_sid=W1C6S0u1y8a2A6E864o8L480Z0; LW_uid=51H6V041L8i2n6Q8M4S8e4k0D0; uin_cookie=o0878530130; ied_qq=o0878530130; o_cookie=878530130; pac_uid=1_878530130; luin=o0878530130; lskey=000100000f95a236a0b3f6a309a1f6e4809612024104f9a476a9b0803995ce53ec225971d5d95f3164c7df7a; rewardsn=; wxtokenkey=777'}
path = datetime.datetime.strftime(curr_time, '%Y%m%d%H%M')# 将工夫格式化为字符生成工夫戳到时候给文件夹命名用
print(path)
if os.path.exists(path):# 查看是否存在这个文件夹
 print("属于这个工夫点的文件夹曾经创立好")
else:
 os.mkdir(path)# 不存在则创立
 print("创立胜利!!!!正在保留图片")
dirname = os.getcwd() + ''+ path +''# 获取当前工作目录并加上之前的工夫生成文件夹门路
req = requests.get(url=url, headers=headers).content.decode()# 向方才输出的公众号链接外面发送申请
soup = BeautifulSoup(req, 'lxml')# 用 BeautifulSoup 解析网页
res = soup.select('img')# 获取该网页中所有的图片标签
a = 0
for i in res:# 遍历所有的图片标签
 if i.get("data-src") == None:# 如果这个标签内的 data-src 等于空的时候间接跳过
 pass
 else:# 否则获取 data-src 外面的内容获取图片链接
 print(f'链接:{i.get("data-src")}类型为:{i.get("data-type")}')
 try:# 尝试去保留图片 如果保留图片谬误则抛出异样
 with open(dirname + f'{a}.{i.get("data-type")}', 'wb') as f:# 拼接门路 +a.jpg a 是等于数字 每增加一个 a 自增一 相当于是给图片命名 并且以二进制的模式写入
 f.write(requests.get(url=i.get("data-src"), headers=headers).content)# 向这个图片发送申请 并将图片的二进制写入
 f.close()# 敞开写入
 a = a + 1#a 自增一
 except Exception as e:# 抛出异样 减少程序强健性
 print("该链接为空主动跳过!")
print(f"此次一共胜利保留图片 {a} 张")

右击运行代码,即可胜利爬取链接内所有的公众号图片,爬取的内容会依据本地工夫生成一个文件夹,图片寄存在文件夹内。代码获取后盾回复:”公众号图片下载“。

以上就是明天给大家分享的内容。

退出移动版