python - raise HTTPError(req.full_url, code, msg, hdrs, fp) urllib.error.HTTPError: HTTP Error 403: Forbidden
问题描述
漫画(日本漫画)没有 pdf 格式,但有原始图像,所以我创建了一个可以自动下载照片的工具。
这是我的代码
import requests
import urllib.request
from bs4 import BeautifulSoup
responsePage = input("Enter URL: ")
response = requests.get(responsePage)
soup = BeautifulSoup(response.text, 'html.parser')
images = soup.findAll('img')
image_name = 0
for img in images[1:-1]:
image_name += 1
url = img['src']
full_name = str(image_name) + '.jpg'
print(response.headers)
resource_image = urllib.request.urlretrieve(url, full_name)
print(full_name + " Saved!")
我收到的错误是:
urllib.error.HTTPError: HTTP Error 403: Forbidden
关于如何解决这个问题的任何建议?帮助将不胜感激。
解决方案
import requests
from bs4 import BeautifulSoup
import os
def download_image(url, path):
r = requests.get(url, stream=True)
if r.status_code == 200:
with open(path, 'wb') as f:
for chunk in r:
f.write(chunk)
URL = "https://manganelo.com/chapter/read_detective_conan_manga_online_free/chapter_10"
r = requests.get(URL)
soup = BeautifulSoup(r.text, 'html.parser')
images = soup.findAll('img')
for i in images:
url = i.attrs["src"]
os.makedirs(url.split('/')[-2], exist_ok=True)
download_image(url, os.path.join(url.split('/')[-2], url.split('/')[-1]))
推荐阅读
- asp.net - 使用 ng-include 时 MVC 路由不起作用
- python - Keras 的回调 evaluate_generator
- c++ - 没有堆的两种方式构造对象
- php - 与服务相关的活动正确显示
- google-bigquery - 使用联接表中的引用查询 BigQuery 中的分区表
- css - 聚合物扩展样式
- calculated-columns - Spotfire:计算两个过滤系列之间的增量
- python - 在处理时向文件列表添加计数
- python - 如何在电报机器人(pytelegramBotAPI)中获取chat_id和message_id以更新电报机器人(Python)中最后发送的消息
- python - 更改满足 DataFrame 中条件的行的列值