自动爬取全景网图片

2022-06-14 702 0

全景网一直在改动,原来是json格式,现在直接显示在了html里,和教程就完全不一样了。自己摸索了一阵子,最后因为https的问题饶了一些弯路。

最终精简后实现的代码其实很短

import requests
from bs4 import BeautifulSoup
import os
url='https://www.quanjing.com/tupian/bujiadi.html'
headers={
'Cookie': 'BIGipServerPools_Web_ssl=1531750592.47873.0000; accessId=578c8dc0-6fab-11e8-ab7a-fda8d0606763; Hm_lvt_c01558ab05fd344e898880e9fc1b65c4=1654929785,1655178824; qjimgsearchtype=1; ASP.NET_SessionId=1fmr40dz41du3k0zqms3ifcd; QJUserPassport=token=xp/E49RRu+CZXwvsHU9QRohW2qfVu0qeM++AbWX9t29rDIq/B+5dPrpE3ySckHi18qCSSYuYnvohscEpVbj23fGDLQ6aCNnCPIVzEDSC/Up/xsEy855UObjjAGPkYZaBYmN8YHRhnCncOtgsY/k0GcrS6ywzXRo7CXJExO7aK1yxnkeZdbn+TxoulNBA3ys6Vweb3VFS5oZXvQguqvaRbqb1aNU77Ndg3vDUqubFBTCj1EjubY4Q+xmNq3aLAqft&loginname=User_1969103&username=k%e0%be%82%27; Hm_lpvt_c01558ab05fd344e898880e9fc1b65c4=1655198932; qimo_seosource_578c8dc0-6fab-11e8-ab7a-fda8d0606763=%E7%BB%94%E6%AC%8F%E5%94%B4; qimo_seokeywords_578c8dc0-6fab-11e8-ab7a-fda8d0606763=; pageViewNum=13',
'Referer': 'https://www.quanjing.com/tupian/bujiadi.html',
'User-Agent': 'Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/102.0.0.0 Safari/537.36'
}
html = requests.get(url,headers=headers)
soup = BeautifulSoup(html.text,'lxml')
div = soup.select('ul#gallery-list.gallery_list li a img')
if not os.path.exists('quanjing'):
    os.mkdir('quanjing')
i=0
for pic in div:
    with open('quanjing/{}.jpg'.format(i),'wb')as f:
        f.write(requests.get(pic['src'],verify=False).content)
        i=i+1

自己的弯路:1.for循环的嵌套理解。2.pycharm报错的误解。

最终自动批量下载效果

以后可以根据图片的具体参数再加入一些判断语句,从而实现爬取更加精准的图片要求。算是有一点实用性吧

这只是第一页的内容,如果要翻页,笨点的方法是根据需要get请求的网页特征,再做循环。以后再研究,说不定有更方便的方法

相关文章

python 免费下载歌曲和破解VIP视频
Python抓取淘宝评论(1)
Python抓取3D打印笔天猫评论(3)
利用python对电脑文件进行分类整理
Python抓取3D打印笔天猫评论(1)
python抓取唯品会3D打印笔信息

发布评论