当前位置:首页 > 行业动态 > 正文

python 自定义函数

要在互联网上获取最新内容,可以使用Python编写自定义函数,这里以爬取网页新闻为例,使用requests库和BeautifulSoup库来实现,以下是详细的技术教学:

1、需要安装requests库和BeautifulSoup库,在命令行中输入以下命令进行安装:

pip install requests
pip install beautifulsoup4

2、接下来,编写一个自定义函数get_latest_news,该函数接收一个URL参数,用于指定要爬取的网页,在函数内部,使用requests库获取网页内容,然后使用BeautifulSoup库解析网页,提取新闻标题和链接。

import requests
from bs4 import BeautifulSoup
def get_latest_news(url):
    # 发送HTTP请求,获取网页内容
    response = requests.get(url)
    # 使用BeautifulSoup解析网页
    soup = BeautifulSoup(response.text, 'html.parser')
    # 提取新闻标题和链接
    news_list = soup.find_all('a', class_='newstitle')
    # 打印新闻标题和链接
    for news in news_list:
        print(news.text, news['href'])
调用函数,传入要爬取的网页URL
get_latest_news('https://news.example.com')

3、运行上述代码,即可获取指定网页上的最新新闻标题和链接,注意,这里的'https://news.example.com'需要替换为实际要爬取的网页URL,根据实际网页的HTML结构,可能需要修改提取新闻标题和链接的代码。

4、如果需要将爬取到的新闻保存到文件中,可以对get_latest_news函数进行修改,添加一个可选参数output_file,用于指定输出文件的路径,在函数内部,将新闻标题和链接写入到指定的文件中。

def get_latest_news(url, output_file=None):
    # 发送HTTP请求,获取网页内容
    response = requests.get(url)
    # 使用BeautifulSoup解析网页
    soup = BeautifulSoup(response.text, 'html.parser')
    # 提取新闻标题和链接
    news_list = soup.find_all('a', class_='newstitle')
    # 打印新闻标题和链接
    for news in news_list:
        if output_file:
            with open(output_file, 'a', encoding='utf8') as f:
                f.write(news.text + '
')
                f.write(news['href'] + '
')
        else:
            print(news.text, news['href'])
调用函数,传入要爬取的网页URL和输出文件路径
get_latest_news('https://news.example.com', 'latest_news.txt')

5、运行上述代码,即可将爬取到的新闻保存到指定的文件中,如果不需要保存到文件,可以直接调用get_latest_news函数,不传入output_file参数。

通过以上步骤,可以实现一个简单的Python自定义函数,用于在互联网上获取最新内容,当然,实际应用中可能需要根据不同的网站和需求进行相应的调整。

0