爬虫实战:从HTTP请求获取数据解析社区
import requests
from bs4 import BeautifulSoup
# 发送HTTP请求并获取响应
def fetch_html(url):
try:
response = requests.get(url)
if response.status_code == 200:
return response.text
else:
print(f"请求失败,状态码: {response.status_code}")
return None
except requests.exceptions.RequestException:
print("请求出现异常")
return None
# 解析HTML内容,提取帖子标题和链接
def parse_html(html_content):
soup = BeautifulSoup(html_content, 'html.parser')
posts = soup.find_all('div', class_='post')
for post in posts:
title = post.find('a', class_='title')
if title:
print(f"标题: {title.text}")
print(f"链接: https://bbs.csdn.net{title['href']}")
# 主函数
def main():
url = "https://bbs.csdn.net/topics/603804717"
html_content = fetch_html(url)
if html_content:
parse_html(html_content)
if __name__ == "__main__":
main()
这段代码首先定义了一个函数fetch_html
来发送HTTP请求并获取响应内容,然后定义了一个函数parse_html
来解析HTML内容,提取帖子标题和链接,并在主函数main
中调用这两个函数。这个简单的爬虫示例展示了如何使用requests库发送HTTP请求以及如何使用BeautifulSoup库解析HTML内容。
评论已关闭