网络爬虫BeautifulSoup库的使用

使用BeautifulSoup库提取HTML页面信息

#!/usr/bin/python3
import requests
from bs4 import BeautifulSoup

url=‘http://python123.io/ws/demo.html‘
r=requests.get(url)
if r.status_code==200:
    print(‘网络请求成功‘)

demo=r.text
soup=BeautifulSoup(demo,‘html.parser‘)
print(soup.prettify())

BeautifulSoup类的基本属性

#!/usr/bin/python3
import requests
from bs4 import BeautifulSoup

url=‘http://python123.io/ws/demo.html‘
r=requests.get(url)
if r.status_code==200:
    print(‘网络请求成功‘)

demo=r.text
soup=BeautifulSoup(demo,‘html.parser‘)
tag_title=soup.title
print(tag_title)
tag_a_attrs=soup.a.attrs
print(soup.p.string)

标签树的下行遍历

#!/usr/bin/python3
import requests
from bs4 import BeautifulSoup

url=‘http://python123.io/ws/demo.html‘
r=requests.get(url)
if r.status_code==200:
    print(‘网络请求成功‘)

demo=r.text
soup=BeautifulSoup(demo,‘html.parser‘)

print(soup.prettify())
print(‘我是分割线‘.center(80,‘-‘))
#遍历子节点

for child in soup.body.children:
    print(child)
#遍历子孙节点
for descendant in soup.body.descendants:
    print(descendant)

标签树的上行遍历

遍历title标签的上一级标签

print(soup.title.parent)
#a标签的下一标签
print(soup.a.next_sibling)

遍历a标签的所有前序节点以及后续节点

#遍历a标签的前序节点
for sibling in soup.a.next_siblings:
    print(sibling)
#遍历a标签的前序节点
for sibling in soup.a.previous_siblings:
    print(sibling)

soup标签的上一级标签为空,所以要进行判断

原文地址:https://www.cnblogs.com/liberate20/p/10778322.html

时间: 2024-10-08 14:33:08

网络爬虫BeautifulSoup库的使用的相关文章

四 . 爬虫 BeautifulSoup库参数和使用

一  .BeautifulSoup库使用和参数 1 .Beautiful简介 简单来说,Beautiful Soup是python的一个库,最主要的功能是从网页抓取数据.官方解释如下: Beautiful Soup提供一些简单的.python式的函数用来处理导航.搜索.修改分析树等功能.它是一个工具箱,通过解析文档为用户提供需要抓取的数据,因为简单,所以不需要多少代码就可以写出一个完整的应用程序.Beautiful Soup自动将输入文档转换为Unicode编码,输出文档转换为utf-8编码.你

[爬虫] BeautifulSoup库

Beautiful Soup库基础知识 Beautiful Soup库是解析xml和html的功能库.html.xml大都是一对一对的标签构成,所以Beautiful Soup库是解析.遍历.维护"标签树"的功能库,只要提供的是标签类型Beautiful Soup库都可以进行很好的解析. Beauti Soup库的导入 from bs4 import BeautifulSoup import bs4 html文档 == 标签树 == BeautifulSoup类   可以认为三者是等价

Python网络爬虫——BeautifulSoup4库的使用

使用requests库获取html页面并将其转换成字符串之后,需要进一步解析html页面格式,提取有用信息. BeautifulSoup4库,也被成为bs4库(后皆采用简写)用于解析和处理html和xml. 1.调用 bs4库中最主要的便是bs类了,每个实例化的对象都相当于一个html页面 需要采用from-import导入bs类,同时通过BeautifulSoup()创建一个bs对象 代码如下: import requests from bs4 import BeautifulSoup r=r

python网络爬虫学习随笔

---恢复内容开始--- requests库的7个主要方法 方法 描述 requests.request() 构造一个请求,支撑以下各方法的基础方法 requests.get() 获取HTML网页的主要方法,对应于HTTP的GET requests.head() 获取HTML网页头信息的方法,对应于HTTP的HEAD requests.post() 向HTML网页提交POST请求的方法,对应于HTTPde POST requests.put() 向HTML网页提交PUT请求的方法,对应于HTTP

Python爬虫利器:BeautifulSoup库

Beautiful Soup parses anything you give it, and does the tree traversal stuff for you. BeautifulSoup库是解析.遍历.维护 "标签树" 的功能库(遍历,是指沿着某条搜索路线,依次对树中每个结点均做一次且仅做一次访问).https://www.crummy.com/software/BeautifulSoup BeautifulSoup库我们常称之为bs4,导入该库为:from bs4 im

Python:requests库、BeautifulSoup4库的基本使用(实现简单的网络爬虫)

Python:requests库.BeautifulSoup4库的基本使用(实现简单的网络爬虫) 一.requests库的基本使用 requests是python语言编写的简单易用的HTTP库,使用起来比urllib更加简洁方便. requests是第三方库,使用前需要通过pip安装. pip install requests 1.基本用法: import requests #以百度首页为例 response = requests.get('http://www.baidu.com') #res

python3网络爬虫学习——基本库的使用(1)

最近入手学习Python3的网络爬虫开发方向,入手的教材是崔庆才的<python3网络爬虫开发实战>,作为温故所学的内容同时也是分享自己操作时的一些经验与困惑,所以开了这个日记,也算是监督自己去学习.在这一系列的日记中我也会随时加上一些书中没有的内容作为对所学知识的一个补充. (1)使用urllib库 在python3中,把python2的urllib和urllib2两个库合并了,同时作为了其内置的HTTP请求库,不需要额外安装,这个库包括四个模块 request:最基本的HTTP请求模块,可

《python3网络爬虫开发实战》--基本库的使用

1. urllib: request:它是最基本的 HTTP 请求模块,可以用来模拟发送请求 . 就像在浏览器里输入网挝 然后回车一样,只需要给库方法传入 URL 以及额外的参数,就可以模拟实现这个过程了 . error: parse:一个工具模块,提供了许多 URL处理方法,比如拆分.解析 . 合并等. robotparser:主要是用来识别网站的 robots.txt文件,然后判断哪些网站可以爬,哪些网站不可以爬,它其实用得 比较少 . 2. Handle类: 当需要实现高级的功能时,使用H

python3网络爬虫系统学习:第一讲 基本库urllib

在python3中爬虫常用基本库为urllib以及requests 本文主要描述urllib的相关内容 urllib包含四个模块:requests——模拟发送请求 error——异常处理模块 parse——关于URL处理方法的工具模块 robotparser——通过识别网站robot.txt判断网站的可爬取内容 一.发送请求 urllib库发送请求主要使用request模块中的两个内容:urlopen()方法以及Requests类,其中Requests类是结合urlopen()方法来使用的. 首