Python爬虫实验1-爬取新闻标题

Python爬虫实验1-爬取新闻标题

1、代码部分:

import requests  #它用于从网络获取 HTML 内容

from bs4 import BeautifulSoup   #BeautifulSoup用于从HTML或XML文件中提取数据的Python库



url = "https://www.chinanews.com.cn/gn/2024/09-21/10289792.shtml"

response = requests.get(url)

#html_content = response.text

html_content = response.content

soup = BeautifulSoup(html_content, "html.parser")



# 查找特定的新闻标题元素

#使用 .find() 或 .find_all() 方法来查找标签,并使用 .get_text() 方法来获取标签内的文本。

titles = soup.find_all("h1", class_="content_left_title")

for title in titles:

    #print("新闻标题:", title.text)

    print("新闻标题:", title.get_text())

 

2、实验结果:

3、对标网站标题:

4、过程中遇到问题解决:

a、标题返回中文乱码

b、解决方法

  1. 拓展

a、find与find_all用法的区别

(相关链接:python 爬虫之find、find_all用法_python爬虫findall-优快云博客

BeautifulSoup 文档里,find、find_all两者的定义如下:

find_all(tag, attributes, recursive, text, limit, keywords)

find_all(标签、属性、递归、文本、限制、关键词)

find(tag, attributes, recursive, text, keywords)

find与find_all的区别,find只会取符合要求的第一个元素,find_all会根据范围限制参数limit限定的范围取元素(默认不设置代表取所有符合要求的元素,find 等价于 find_all的 limit =1 时的情形),接下来将对每个参数一一介绍。

另外,find_all会将所有满足条件的值取出,组成一个list。

b、BeatifulSoup中'html.parser'和'lxml'用法的不同

(相关链接:BeautifulSoup 中 ‘lxml’ 和 ‘html.parser’有什么区别?_beautifulsoup html.parser-优快云博客

c、BeautifulSoup 三个方法:getText()、text()和get_text()

(相关链接:BeautifulSoup 三个方法:getText()、text()和get_text()|极客教程 (geek-docs.com)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值