豆包MarsCod:使用Python和AI助手编写网络爬虫

166 阅读2分钟

引言

 

在当今快速发展的互联网时代,网络爬虫成为了获取网页数据的重要工具。作为一名程序员,编写高效、简洁的爬虫代码是必备技能之一。本文将介绍如何使用Python语言,结合requests和BeautifulSoup库,以及AI助手的帮助,来编写一个简单的网络爬虫,以获取网页的标题为例。

 

环境准备

 

在开始编写代码之前,我们需要确保已经安装了必要的Python库。以下是安装requests和BeautifulSoup库的步骤:

 

pip install requests beautifulsoup4

pip install requests beautifulsoup4

安装后运行结果:

image.png 否则可能出现以下错误:

image.png  

代码示例

  下面是一个简单的Python脚本,用于获取指定网页的标题。请确保将示例中的www.example.com替换为您想要爬取的实际网页地址。这个示例代码会输出网页的标题,如果网页没有标题,则会输出 "No title found"。如果请求失败,比如网页不存在或无法访问,代码会返回相应的错误信息。

 


import requests

from bs4 import BeautifulSoup

 

def get_page_title(url):

    # 发送HTTP请求

    response = requests.get(url)

    

    # 检查请求是否成功

    if response.status_code == 200:

        # 使用BeautifulSoup解析HTML内容

        soup = BeautifulSoup(response.text, 'html.parser')

        

        # 提取标题

        title = soup.title.string if soup.title else "No title found"

        

        return title

    else:

        return f"Failed to retrieve page. Status code: {response.status_code}"

 

# 使用示例

url = "https://www.example.com"

title = get_page_title(url)

print(title)

 

www.example.com网页内容:

image.png

 

代码解析

  • 首先,我们导入了requests库来发送HTTP请求,以及BeautifulSoup库来解析HTML内容。

  • 定义了一个名为get_page_title的函数,它接受一个URL作为参数,并返回该网页的标题。

  • 使用requests.get方法发送HTTP GET请求到指定的URL。

  • 通过检查response.status_code来确认请求是否成功。如果状态码为200,表示请求成功。

  • 如果请求成功,使用BeautifulSoup解析返回的HTML内容,并尝试提取<title>标签中的文本。

  • 如果网页没有<title>标签,函数将返回"No title found"。

  • 如果请求失败,函数将返回一个包含错误状态码的字符串。

 

结语

通过上述步骤,我们成功编写了一个简单的网络爬虫,它可以获取网页的标题。