用python怎么爬取https://www.xuanxiaodi.com/ranks/2391-1.html这个网站的大学排名以及大学校徽,需要具体代码
时间: 2023-08-22 21:09:10 浏览: 48
好的,您需要用Python爬取该网站的大学排名和大学校徽。下面是一个简单的Python爬虫示例代码:
```
import requests
from bs4 import BeautifulSoup
import os
# 爬取的网站URL
url = "https://www.xuanxiaodi.com/ranks/2391-1.html"
# 获取HTML页面内容
response = requests.get(url)
html = response.content
# 使用BeautifulSoup解析HTML页面
soup = BeautifulSoup(html, "html.parser")
# 获取大学排名和大学校徽信息
rank_list = soup.find_all("td", class_="rank")
logo_list = soup.find_all("td", class_="logo")
# 保存大学排名和大学校徽
for i in range(len(rank_list)):
rank = rank_list[i].text.strip()
logo_url = logo_list[i].find("img")["src"]
logo_name = logo_list[i].find("img")["alt"]
logo_path = os.path.join("logo", logo_name + ".png")
with open(logo_path, "wb") as f:
f.write(requests.get(logo_url).content)
print("Rank: ", rank, ", Logo saved to: ", logo_path)
```
在这个示例中,我们首先使用requests库向指定URL发送请求,并获取HTML页面的响应内容。然后,我们使用BeautifulSoup库解析HTML页面,查找包含大学排名和大学校徽信息的HTML元素。最后,我们循环遍历这些元素,并提取出大学排名和大学校徽的信息。对于每个大学校徽,我们使用requests库下载图片,并保存到本地磁盘上。
需要注意的是,我们在这个示例中使用了os库创建了一个名为“logo”的文件夹,用于保存大学校徽图片。如果您的程序中没有这个文件夹,可能会出现文件不存在的错误。因此,您需要在运行程序之前手动创建这个文件夹。