Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/300.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
我无法使用python从站点下载足够数量的图片_Python_Beautifulsoup - Fatal编程技术网

我无法使用python从站点下载足够数量的图片

我无法使用python从站点下载足够数量的图片,python,beautifulsoup,Python,Beautifulsoup,我是新来的。我在编程方面有点经验 我正在学习python 这本书中有一个任务:这个程序进入Imgur,搜索一类照片,然后下载所有生成的图像。 我有一个问题:当Imgur显示搜索页面时,有58个图片。当你向下滚动时,Imgur会显示加上58张图片等。我想下载所有图片。但我只能下载前58个。 我尝试通过Selenium滚动页面,然后通过BS4进行选择。 我尝试更改BS4的选择参数。 但我只有58张照片。 我做错了什么 我的代码: ! python 导入请求、操作系统、bs4、时间 从selenium

我是新来的。我在编程方面有点经验

我正在学习python

这本书中有一个任务:这个程序进入Imgur,搜索一类照片,然后下载所有生成的图像。 我有一个问题:当Imgur显示搜索页面时,有58个图片。当你向下滚动时,Imgur会显示加上58张图片等。我想下载所有图片。但我只能下载前58个。 我尝试通过Selenium滚动页面,然后通过BS4进行选择。 我尝试更改BS4的选择参数。 但我只有58张照片。 我做错了什么

我的代码:

! python 导入请求、操作系统、bs4、时间 从selenium导入webdriver 从selenium.webdriver.common.keys导入密钥 os.makedirs'imgur',exist\u ok=True 打印“你想要什么?” 搜索=输入 url='1〕https://imgur.com/search/score/all?q=“+搜索 browser=webdriver.Firefox browser.geturl 对于范围3中的i: htmlElem=browser.find_element_by_tag_name'html' htmlElem.send_keys.END 时间1 res=requests.geturl res.raise_为_状态 soup=bs4.BeautifulSoupres.text,html.parser 照片=汤。选择“图片” 对于照片中的照片: photoUrl='http:'+photo.get'src' res=requests.getphotoUrl res.raise_为_状态 photoFile=openos.path.join'imgur',os.path.basenamephotoUrl',wb' 对于res.iter_content100000中的块: photoFile.writechunk photoFile.close 打印“完成”
如果您查看imgur搜索,您将看到某种分页。在html中,这些页面位于不同的div中。因此,在不深入了解代码细节的情况下,我可以假设问题在于代码在第一页之外看不到任何内容。我添加了新的屏幕截图。是的,每组58张图片都有自己的div。而且,你可以看到所有的图片都在里面。我试着输入操作员选择值“.cards img”。我有58张照片。此外,我还使用了几个标签来选择。作为解决方案,我可以建议您使用。这样会更方便。这是。谢谢,但我不需要照片。问题不在于从Imgur下载图片,而在于学习编程。我想强制我的程序工作,并了解过程。