1. BeautifulSoup
它是一个非常流行的python脚本库,用于解析HTML和XML文档。如果你对 java 很熟悉,那么就会容易想到java中也存在一个类似的java库,叫Jsoup
,名称相似,效果也差不多。BeautifulSoup提供了简单易用的API,可以通过标签名、属性、CSS选择器等各种方式查找和提取HTML元素.
安装
pip install beautifulsoup4
实例代码:
from bs4 import BeautifulSoup
import requests
# 发送请求获取到 html 内容
response = requests.get("https://www.example.com")
html_content = response.text
# 创建 BeautifulSoup 对象
soup = BeautifulSoup(html,'html.parser')
# 创建 CSS 选择器查找元素
elements = soup.select(".class-name")
for element in elements:
print(element.text)
demo:
比如我现在想获取新浪新闻的列表:
对 html 进行分析,我们可以发现 class name:
那么我们可以直接填入代码:
def try\_to\_get\_world\_news() :
response = requests.get("https://news.sina.com.cn/world/")
response.encoding = "utf-8"
html_data = response.text
# 创建 BeautifulSoup 对象
soup = BeautifulSoup(html_data, "html.parser")
# 通过css选择器cha查找元素
elements = soup.select(".news-item")
for element in elements:
if element is not None:
a_links = element.find_all('a')
if a_links is not None and len(a_links) > 0 :
a_link = a_links[0]
a_text = a_link.text.strip()
a_href = a_link.get('href')
print("文本:" + a_text + ",链接:" + a_href)
可以看到结果:
2. lxml
另外一个强大的python库,也是用来处理 HTML 和 XML 文档。当然,它提供了XPath和CSS选择器等功能,也可以很方面的定位和提取HTML库。
安装
pip install lxml
当然你还可能需要安装一下 cssselect 这个库
pip install cssselect
代码实例
from lxml import html
import requests
import cssselect
# 创建请求对象,获取请求内容
response = requests.get("https://www.example.com")
html_content = response.text
# 创建 lxml 的 HTML 对象
tree = html.fromstring(html_content)
# 通过 css 选择器查找
elements = tree.cssselect(".class-name")
for element in elements:
print(element.text)
demo:
同样也是上面的例子,直接贴代码:
自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。
深知大多数Python工程师,想要提升技能,往往是自己摸索成长或者是报班学习,但对于培训机构动则几千的学费,着实压力不小。自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!
因此收集整理了一份《2024年Python开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。
既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上Python开发知识点,真正体系化!
由于文件比较大,这里只是将部分目录大纲截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且后续会持续更新
如果你觉得这些内容对你有帮助,可以添加V获取:vip1024c (备注Python)
最后
不知道你们用的什么环境,我一般都是用的Python3.6环境和pycharm解释器,没有软件,或者没有资料,没人解答问题,都可以免费领取(包括今天的代码),过几天我还会做个视频教程出来,有需要也可以领取~
给大家准备的学习资料包括但不限于:
Python 环境、pycharm编辑器/永久激活/翻译插件
python 零基础视频教程
Python 界面开发实战教程
Python 爬虫实战教程
Python 数据分析实战教程
python 游戏开发实战教程
Python 电子书100本
Python 学习路线规划
74929476f9c3b30f7ff58dff0.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L2ZlaTM0Nzc5NTc5MA==,size_16,color_FFFFFF,t_70)