python-网络安全编程第五天(爬虫模块BeautifulSoup)
2024-09-07 12:38:39
前言
昨晚学的有点晚 睡得很晚了,今天早上10点多起来吃完饭看了会电视剧就瞌睡了一直睡到12.50多起来洗漱给我弟去开家长会 开到快4点多才回家。耽搁了不少学习时间,现在就把今天所学的内容总结下吧。
BeautifulSoup模块介绍
Beautiful Soup 是一个可以从HTML或XML文件中提取数据的Python库.它能够通过你喜欢的转换器实现惯用的文档导航,查找,修改文档的方式.Beautiful Soup会帮你节省数小时甚至数天的工作时间.
使用方法流程
1.解析内容
from bs4 import BeautifulSoup
soup=beautifulSoup(html_doc)
2.浏览数据
soup.title
soup.title.string
3.BeautifulSoup正则使用
soup.find_all(name='x',attrs={'xx':re.compile('xxx')})
name 代表标签
attrs 标签内东西
基本使用
1.标签选择
print(soup.title)
2.获取名称
soup.title.name
3.获取内容
print(soup.p.string)
4.嵌套选择
print(soup.head.title.string)
演示eg:
1 爬取某度传课课程的名称
2 import requests
3 from bs4 import BeautifulSoup
4
5 url="https://chuanke.moudu.com/course/72351163642544128_____.html"
6
7 r=requests.get(url)
8 soup=BeautifulSoup(r.content,'lxml')#选择lxml解析器
9 10 title_all=soup.find_all(name='div',attrs={'class':'item-title'}) 11 for title in title_all: 12 print(title.a.string)
1 爬取某度传课课程的名称(配合正则表达式精确爬虫)
2 import requests
3 from bs4 import BeautifulSoup
4 import re
5
6 url="https://chuanke.moudu.com/course/72351163642544128_____.html"
7
8 r=requests.get(url)
9 soup=BeautifulSoup(r.content,'lxml') #选择lxml解析器
10
11 title_all=soup.find_all(name='a',attrs={'href':re.compile('//chuanke.moudu.com/\d*-\d*.html')})
12 for title in title_all:
13 print(title.string)
参考学习
https://beautifulsoup.readthedocs.io/zh_CN/v4.4.0/#id13 beautifulsoup中文手册
最新文章
- Android 防止多次点击事件
- 深入SpringMVC
- 算法:寻找maximum subarray
- JS全局变量VAR和THIS
- 黄金点游戏之客户端(homework-05)
- ConversionException: No value specified for 'Date'的解决版本
- PHP 学习笔记 (二)
- 删除N 中 所有的 x
- 人物角色群体攻击判定(三)Physics.OverlapSphere(群体攻击)
- seq2seq-chatbot:200 行代码实现聊天机器人
- Java中Excel导入功能实现、excel导入公共方法_POI -
- PHP循环语句深度理解分析——while, for, foreach, do while
- 偏差(Bias)和方差(Variance)——机器学习中的模型选择zz
- Liferay7 BPM门户开发之24: Liferay7应用程序安全
- ubuntu upgrade
- 一、搭建Django,建立第一个demo
- UWP开发细节记录:判断文件类型
- 利用 log-pilot + elasticsearch + kibana 搭建 kubernetes 日志解决方案
- hdu 5195 DZY Loves Topological Sorting (拓扑排序+线段树)
- 防止 Google Smart Lock 记忆错的用户名