想要爬取一个漫画站点的图片
下图是 urllib.request.Request 然后通过 BeautifulSoup 转化的部分内容,想要其中的图片链接下载图片
<a class="cartoon-cover" data-rseat="genrelist_01" href="/book/4683" target="_blank" title="監獄女囚">
<div alt="監獄女囚" class="cropped" data-src="
https://bmigmi-global.ccavbox.com/break_2/static/upload/book/4683/cover_pc.jpg?t=3" id="comic_4683_cover">
</div>
</a>
然后是通过 requests 下载的一个测试
headers = {
'Accept': '*/*',
'Accept-Encoding': 'gzip, deflate, br',
'Accept-Language': 'zh-HK,zh;q=0.9,zh-CN;q=0.8,en-US;q=0.7,en;q=0.6',
'Connection': 'keep-alive',
'Origin': '
https://www.comicbox.xyz',
'Referer': '
https://www.comicbox.xyz/',
'sec-ch-ua': '"Chromium";v="116", "Not)A;Brand";v="24", "Google Chrome";v="116"',
'sec-ch-ua-mobile': '?0',
'Sec-Fetch-Dest': 'empty',
'Sec-Fetch-Mode': 'cors',
'Sec-Fetch-cors': 'cross-site',
'User-Agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/116.0.0.0 Safari/537.36',
}
response = requests.request("GET", url, headers=headers)
if response.status_code == 200:
file = "./HM"
with open('ccc.jpg', 'wb') as f:
f.write(response.content)
f.close()
然而访问是 200 ,同时 response.content 也是有内容的,但是下载后的图片打开却提示文件已损坏
同时查看浏览器的请求信息是发现同一个图片链接访问了两次,并且请求地址和我获取到的地址有变化
https://bmigmi-global.ccavbox.com/break_2/static/upload/book/4683/cover_pc.b_0?t=9https://bmigmi-global.ccavbox.com/break_2/static/upload/book/4683/cover_pc.b_1?t=9请问这是该站点采用了某种图片的加密方式吗,我该如何下载这个图片呢
这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。
https://www.v2ex.com/t/972099
V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。
V2EX is a community of developers, designers and creative people.