python - 图片下载器
问题描述
我在 python 中为我的朋友制作了一个脚本(我输了),它通过 data-thumb_url 标签下载所有缩略图(大约 50 个 imgs,一个 img 大小为 20 kB),其中是 url。
这段代码会破坏网站或严重影响网站吗(我的意思是 DDOS 或类似的东西)?我用它几次 10,20,30 图像,它运行良好,网站也正常运行(它是非常受欢迎的网站,世界上最多的之一,在这个网站上并没有说网络抓取是非法的),但我需要知道它是否是安全代码。
from PIL import Image
from bs4 import BeautifulSoup
import requests
import os
url = '' #(here is the url of website)
response = requests.get(url)
soup = BeautifulSoup(response.text, 'html.parser')
images = soup.find_all('img')
listt = []
for i in images:
try:
listt.append(i['data-thumb_url'])
except KeyError:
pass
for i in range(len(listt)):
img = Image.open(requests.get(listt[i], stream = True).raw)
img.save("image"+str(i)+".jpg")
我知道考虑到每天有 80-1 亿次网站浏览量,这是一个有点愚蠢的问题,例如从网站下载图像的免费扩展程序/网站/程序,但我是 bs 和 Python 中的请求的新手 + 我是焦虑的。
解决方案
如果您正在访问多个 url,即使处于睡眠状态,该站点也可能具有您可能触发的其他安全措施(证明您是人类)。当您尝试访问其他页面时,这可能会导致您的脚本失败...
如果没有看到您正在访问的网站和页面数量,很难确定。但是 Cargo23 是对的,就目前而言,您不会很快破坏该网站。
推荐阅读
- visual-studio - 在进行正常复制“Cmd + c”时,如何阻止 VS 代码在 Vim 中进入正常模式?
- tensorflow - 无法将 tf.keras.layers.ConvLSTM2D 层转换为打开 vino 中间表示
- r - R - 对许多数据集执行相同的操作
- powershell - 复制脚本,需要关于添加循环的建议
- r - Rstudio - 无法安装 Tidyverse 或其他软件包
- javascript - typescript 的 checkjs 可以验证 javascript 类是否正确地实现了定义文件中的接口?
- sas - SAS Enterprise Guide:如何查询库并将结果导出到 CSV
- php - 不能包含 processing.js 草图以使用和显示 phpmyadmin 数据库图像
- python-2.7 - 如何循环端口进行扫描?
- r - 如何在 R 中向数据框(转换后)添加一行?