Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/365.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_Web Scraping_Download - Fatal编程技术网

Python 如何下载网站中所有可用的数据文件夹?

Python 如何下载网站中所有可用的数据文件夹?,python,web-scraping,download,Python,Web Scraping,Download,一般来说,如果网站显示一系列指向包含文件夹的数据的链接(即包含经济数据的电子表格),我如何编写一个程序来识别所有链接并下载数据 特别是,我正在尝试下载本网站2012年至2018年的所有文件夹 我尝试了下面建议的方法,但似乎没有下载到数据的链接 my_target='https://www.ngdc.noaa.gov/eog/viirs/download_dnb_composites.html' import requests from bs4 import BeautifulSoup r

一般来说,如果网站显示一系列指向包含文件夹的数据的链接(即包含经济数据的电子表格),我如何编写一个程序来识别所有链接并下载数据

特别是,我正在尝试下载本网站2012年至2018年的所有文件夹

我尝试了下面建议的方法,但似乎没有下载到数据的链接

my_target='https://www.ngdc.noaa.gov/eog/viirs/download_dnb_composites.html'


import requests
from bs4 import BeautifulSoup

r  = requests.get(my_target)
data = r.text
soup = BeautifulSoup(data)

links=[]
for link in soup.find_all('a'):
    links.append(link.get('href'))
    print(link.get('href'))
在附加到链接的所有URL中,没有一个指向数据

最后,即使我有了正确的链接,如何使用它们来实际下载文件


非常感谢

这是一个典型的网页抓取任务

  • 用于下载该页面
  • 然后使用

  • 现在,您可以使用提取的URL和


所以,你有所有文件的链接,但你不知道如何下载它们?不幸的是,我需要这两个:)事实上,这并不是那么简单。经过简单的URL提取后,这些链接无法直接使用。即使在解析的html中,它们也不在这里。就好像网站的下拉菜单发出了一些外部请求,那么在处理完所有动态内容后,您应该使用它来提取URL或提供页面源代码,返回beautifulsoup。非常感谢@m9mhmdy重定向到selenium!然而,作为一个网络垃圾新手,我不知道从哪里开始。这将是非常有帮助的进一步澄清!