我想爬取这个网页https://data.binance.vision/?prefix=data/spot/daily/aggTrades/ETHUSDT/中的所有ZIP文件,并保存到本地,python如何实现:其中headers = {'User-Agent':'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/113.0.0.0 Safari/537.36'} url = "https://data.binance.vision/?prefix=data/spot/daily/aggTrades/ETHUSDT/"
时间: 2023-07-17 08:54:32 浏览: 49
你可以使用Python的requests和BeautifulSoup库来实现这个任务。在发送HTTP请求时,需要加入headers参数,模拟浏览器的请求头,否则可能会被网站拒绝访问。
以下是实现的代码:
```python
import requests
from bs4 import BeautifulSoup
import os
# 创建保存ZIP文件的目录
if not os.path.exists("zip_files"):
os.makedirs("zip_files")
# 发送HTTP请求并获取网页内容
url = "https://data.binance.vision/?prefix=data/spot/daily/aggTrades/ETHUSDT/"
headers = {'User-Agent':'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/113.0.0.0 Safari/537.36'}
response = requests.get(url, headers=headers)
# 解析HTML内容并找到所有的ZIP文件链接
soup = BeautifulSoup(response.content, "html.parser")
links = soup.find_all("a")
zip_links = [link.get("href") for link in links if link.get("href").endswith(".zip")]
# 下载并保存ZIP文件
for zip_link in zip_links:
filename = zip_link.split("/")[-1]
filepath = os.path.join("zip_files", filename)
response = requests.get(zip_link, headers=headers)
with open(filepath, "wb") as f:
f.write(response.content)
print(f"Saved {filename} to local directory")
```
这个代码会将所有的ZIP文件下载并保存到当前目录下的`zip_files`文件夹中。如果你想要保存到其他目录,可以修改代码中的`os.path.join()`函数的参数。同时,也可以修改headers中的User-Agent来模拟不同的浏览器。
相关推荐
![rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![](https://img-home.csdnimg.cn/images/20210720083646.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)