【2024年】基于python的旅游景点推荐系统模拟爬虫
import requests
from bs4 import BeautifulSoup
import pandas as pd
# 设置请求头,模拟浏览器访问
headers = {
'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.110 Safari/537.3'}
# 定义一个函数来获取页面内容
def get_page_content(url):
response = requests.get(url, headers=headers)
if response.status_code == 200:
return response.text
return None
# 定义一个函数来解析页面数据
def parse_data(html):
soup = BeautifulSoup(html, 'html.parser')
data = []
for item in soup.find_all('div', class_='info'):
name = item.find('div', class_='name').text.strip()
address = item.find('div', class_='address').text.strip()
data.append({'name': name, 'address': address})
return data
# 定义一个函数来保存数据到CSV文件
def save_to_csv(data, filename):
df = pd.DataFrame(data)
df.to_csv(filename + '.csv', index=False, encoding='utf-8-sig')
# 测试函数
if __name__ == '__main__':
url = 'http://example.com/tourist-attractions'
html = get_page_content(url)
parsed_data = parse_data(html)
save_to_csv(parsed_data, 'tourist_attractions')
这个代码示例展示了如何使用Python进行网页爬取。它首先定义了请求头,用于模拟浏览器访问网页。然后定义了一个函数来获取页面内容。接着定义了一个函数来解析页面中的旅游景点数据,并收集名称和地址。最后,定义了一个函数将数据保存到CSV文件中。这个例子简洁明了,并且使用了requests和beautifulsoup4两个常用的Python库来处理网络请求和HTML解析。
评论已关闭