bs4(BeautifulSoup)库的基本使用

1.导入模块

from bs4 import BeautifulSoup

2.解析获取到的网页内容

文档被转换成Unicode,并且HTML的实例都被转换成Unicode编码。

可以打印soup对象的内容,格式化输出:print soup.prettify()

url_str = getHTMLText(url)

soup = BeautifulSoup(url_str,'html.parser')

3.基本使用方法

bs4 将复杂的HTML文档转换成一个复杂的树形结构,每个节点都是python的对象。

根据标签查找(type:bs4_obj)

head = soup.head

"""

百度一下,你就知道

"""

获取属性

title = head.title # 在soup中获取第一个符合要求的标记

#

百度一下,你就知道

title_str = name.string # 获取标签内部的文字

# 百度一下,你就知道

meta = head.meta

#

content = meta.get('content') # 获取meta中第一个属性

content = meta['content']

# text/html;charset=utf-8

content = meta.attrs # 获取meta中所有属性

# {'http-equiv': 'content-type', 'content': 'text/html;charset=utf-8'}

meta.name = 'hi' # 修改标签的name

meta['content'] = 'hello world' # 修改标签的属性和内容

print(meta)

#

获取文本内容

content = head.contents # 返回以head下各标签为元素的列表

"""

[, , , ,

百度一下,你就知道]

"""

print(content[0])

#

text = head.get_text() # 获取head标签内部的文字

# 百度一下,你就知道

print(type(head.title.string)) # bs4.element.NavigableString

if type(head.title.string)== bs4.element.NavigableString: # 过滤注释内容

print('这是注释内容')

else:

print('这不是注释')

获取子孙节点(tpye:generator)

descendants = soup.p.descendants

find&&find_all查找

find_all( name , attrs , recursive , text , **kwargs )

soup.find('a')

soup.find('a',title='hhh')

soup.find('a',id='',class_='')

soup.find_all('a') # 查找所有标签

soup.find(id=True) # 查找所有包含id属性的标签

soup.find_all(limit=2) # 限定查找的返回数量

soup.find_all(['a','p']) # 查找所有标签和标签

str(soup.find_all('a',class_='title')[0]) # 注意因为class为关键字,所以用'class_'代替

soup.find_all(attrs = {'data-role':'goto-input'}) # '-'不能直接用作属性名,需用字典括起来

select选择(type:list)

soup.select('.main > ul > li > a')[0].string

bpython bs4用哪个解释器好_针对python爬虫bs4(BeautifulSoup)库的基础问题相关推荐

  1. python爬虫筛选数据_[python爬虫]使用beautifulsoup库的select方法对网页内容进行筛选...

    from bs4 import BeautifulSoup html = """ The Dormouse's story The Dormouse's story On ...

  2. python爬虫豆瓣电影短评_【Python爬虫】BeautifulSoup爬取豆瓣电影短评

    目的:爬取豆瓣[红海行动]电影的首页短评 步骤: 1.使用BeautifulSoup解析网页 soup = BeautifulSoup(r, 'lxml') // lxml 库解析速度快,也能解析复杂 ...

  3. python request库_【Python爬虫】Request库入门

    什么是爬虫? 网络爬虫(又被称为网页蜘蛛,网络机器人,在FOAF社区中间,更经常的称为网页追逐者),是一种按照一定的规则,自动地抓取万维网信息的程序或者脚本.另外一些不常使用的名字还有蚂蚁.自动索引. ...

  4. img绝对路径图片显示_使用python爬虫去风景图片网站批量下载图片

    使用python爬虫(requests,BeautifulSoup)去风景图片网站批量下载图片 1.写代码背景: 今天闲来无事,想弄点图片放到电脑,方便以后使用,故去百度查找一些风景图片网站,发现图片 ...

  5. python websocket库有什么_常用Python爬虫与Web开发库有哪些?

    Python爬虫和Web开发均是与网页相关的知识技能,无论是自己搭建的网站还是爬虫爬去别人的网站,都离不开相应的Python库,以下是常用的Python爬虫与Web开发库. **1.爬虫库** bea ...

  6. Python 爬虫 bs4 数据解析基本使用

    Python 爬虫 bs4 基本使用 1. bs4 基本语法 1.1 获取 html 页面 1.2 获取标签 1.3 获取标签中的内容 1.4 获取标签中的属性 2. 实例 免责声明:自本文章发布起, ...

  7. python 创意项目_针对python开发人员的10个很棒的python项目创意

    python 创意项目 The joy of coding Python should be in seeing short, concise, readable classes that expre ...

  8. 爬虫只能用python吗_只针对 Python 爬虫,该如何学习?

    最近刚好准备开始写一个 从零开始写python爬虫的系列专栏 希望能帮助到你. 这里先把导言部分贴过来 ------------------------------------------- 从零开始 ...

  9. 没有python基础直接学爬虫_只针对 Python 爬虫,该如何学习?

    最近刚好准备开始写一个 从零开始写python爬虫的系列专栏 希望能帮助到你. 这里先把导言部分贴过来 ------------------------------------------- 从零开始 ...

最新文章

  1. Upwork 发布最赚钱的编程语言 Top 15
  2. webwork2.2.4+spring配制方式总结
  3. 【转】UML基础: 第 2 部分 - 对象图 (Object Diagram)
  4. 字段定义_ArcGIS开发amp;gdb、shapefile创建与投影定义,字段创建
  5. 机器学习之决策树_CART算法
  6. LintCode-7-二叉树的序列化和反序列化
  7. backup archivelog delete input 与delete all input 区别
  8. html音乐if代码如何使用,关于html:如何在带有JavaScript代码的if条件中使用函数方法?...
  9. seo查询系统php源码,2020版SEO计费系统的源码
  10. 韩语在线翻译图片识别_最强文字识别APP
  11. 关于触发器原理及选型参数
  12. 【c++】CTGU2022春校赛原题详解--可以冰墩墩一墩难求啊--单调栈
  13. 【教你如何用驱动人生解决驱动问题】
  14. systemd man手册
  15. 妈妈不在身边的第X个母亲节,用AI找回她的美好时光
  16. 定时任务Alarm的深入理解
  17. C语言:实验11-1-2 输出月份英文名.2021-08-06
  18. 关于netty的@Sharable注解含义,你可bie瞎说了
  19. [zoj 3587]Marlon's String[kmp]
  20. OTA全称为Over-The-Air technology(空中下载技术)

热门文章

  1. 设计一个有getMin功能的栈 (python)
  2. python programming training(三):搜索算法
  3. 文巾解题455. 分发饼干
  4. 初探目前最火的鸿蒙系统,跑了个 “hello world”!
  5. 数据挖掘之KNN分类
  6. mongodb 企业版_MongoDB 凉了?
  7. goland 远程调试go_手把手教你学Go语言,基础环境配置和Hello World
  8. Python入门100题 | 第066题
  9. 会计的疑惑--BigDecimal的秘密
  10. 【模型部署】风控模型部署相关知识