我正在尝试制作网络抓取工具,以从搜索到的关键字下载图像。该代码可以正常工作,直到必须从提取的URL下载该图像为止
from bs4 import BeautifulSoup
import requests
import os
import urllib
search = raw_input("search for images: ")
params = {"q": search}
r = requests.get("http://wwww.bing.com/images/search", params=params)
dir_name = search.replace(" ", "_").lower()
if not os.path.isdir(dir_name):
os.makedirs(dir_name)
soup = BeautifulSoup(r.text, "html.parser")
links = soup.findAll("a", {"class": "thumb"})
for items in links:
img_obj = requests.get(items.attrs["href"])
print "Getting: ", items.attrs["href"]
title = items.attrs["href"].split("/")[-1]
urllib.urlretrieve(items.attrs["href"], "./scrapped_images/")
输出:
search for images: cats
Getting: http://c1.staticflickr.com/3/2755/4353908962_2a0003aebf.jpg
Traceback (most recent call last):
File "C:/Users/qazii/PycharmProjects/WebScrapping/exm.py", line 21, in <module>
urllib.urlretrieve(items.attrs["href"], "./scrapped_images/")
File "E:\anaconda\envs\WebScrapping\lib\urllib.py", line 98, in urlretrieve
return opener.retrieve(url, filename, reporthook, data)
File "E:\anaconda\envs\WebScrapping\lib\urllib.py", line 249, in retrieve
tfp = open(filename, 'wb')
IOError: [Errno 13] Permission denied: './scrapped_images/'
答案 0 :(得分:0)
您正在尝试将图像保存到名为 $request = new Request(
'PUT', 'https://discordapp.com/api/v6/guilds/'.$guildId.'/members/'.$user->discordId(),
[
'Authorization' => 'Bot '.$this->botToken,
"Content-Type" => "application/json"
],
'{"access_token" : "'. $this->discordApplication->accessToken()->__toString().'"}'
);
的“文件”中。由于这是一个目录而不是文件,因此会出现权限错误(您无法使用写权限打开目录)。而是尝试保存为特定的文件名。
./scraped_images/