BeautifulSoup工具包对安装与介绍(1)

一种获取网站信息的工具包

Beautiful Soup 是一个可以从HTML或XML文件中提取数据的Python库.它能够通过你喜欢的转换器实现惯用的文档导航,查找,修改文档的方式.Beautiful Soup会帮你节省数小时甚至数天的工作时间。


代码1:
import requests
from bs4 import BeautifulSoup #注意这里不是用BeautifulSoup4,注意严格区分大小写

r=requests.get(url='https://news.qq.com/a/20180409/001200.htm')
# print(r)
# print(r.text)

soup=BeautifulSoup(r.text,'lxml') #用'lxml'库去解析r.text;   如果不写'lxml'则表示用Python自带带库去解析
#print(type(r.text))    #<class 'str'>   文本文件
#print(type(soup))   #<class 'bs4.BeautifulSoup'>   识别每个标签带意义
#print(soup.prettify())   #输出有缩进带源代码

print(soup.title) #输出标题,如:<title>人民日报评论:2018中国将会勇敢地把开放大门推开更多_新闻_腾讯网</title>
print(soup.a)   #输出链接
print(soup.p)  #输出段落内容
#print(soup.head)  #把head里面的内容全部打出来,<head>****</head>    也就是此处里面的*****

运行结果:


代码2:

import requests
from bs4 import BeautifulSoup #注意这里不是用BeautifulSoup4,注意严格区分大小写

r=requests.get(url='https://news.qq.com/a/20180409/001200.htm')
# print(r)
# print(r.text)

soup=BeautifulSoup(r.text,'lxml') #用'lxml'库去解析r.text;   如果不写'lxml'则表示用Python自带带库去解析
#print(type(r.text))    #<class 'str'>   文本文件
#print(type(soup))   #<class 'bs4.BeautifulSoup'>   识别每个标签带意义
#print(soup.prettify())   #输出有缩进带源代码

# print(soup.title) #输出标题,如:<title>人民日报评论:2018中国将会勇敢地把开放大门推开更多_新闻_腾讯网</title>
# print(soup.a)   #输出链接   识别的是第一个链接
# print(soup.p)  #输出段落内容  识别的是第一个段落
#print(soup.head)  #把head里面的内容全部打出来,<head>****</head>    也就是此处里面的*****


# print(type(soup.title))   #<class 'bs4.element.Tag'>
#print(soup.title)

print(soup.title.name)  #输出title
print(soup.a.name)      #输出a
print(soup.p.name)       #输出p
print(type(soup.title.name))   #输出 <class 'str'>

运行结果:



代码3:

import requests
from bs4 import BeautifulSoup #注意这里不是用BeautifulSoup4,注意严格区分大小写

r=requests.get(url='https://news.qq.com/a/20180409/001200.htm')
# print(r)
# print(r.text)

soup=BeautifulSoup(r.text,'lxml') #用'lxml'库去解析r.text;   如果不写'lxml'则表示用Python自带带库去解析
#print(type(r.text))    #<class 'str'>   文本文件
#print(type(soup))   #<class 'bs4.BeautifulSoup'>   识别每个标签带意义
#print(soup.prettify())   #输出有缩进带源代码

# print(soup.title) #输出标题,如:<title>人民日报评论:2018中国将会勇敢地把开放大门推开更多_新闻_腾讯网</title>
# print(soup.a)   #输出链接   识别的是第一个链接
# print(soup.p)  #输出段落内容  识别的是第一个段落
#print(soup.head)  #把head里面的内容全部打出来,<head>****</head>    也就是此处里面的*****


# print(type(soup.title))   #<class 'bs4.element.Tag'>
#print(soup.title)

#属性attrs
print(soup.title.attrs)  #title没有任何属性
print(soup.a.attrs)      #输出a
print(soup.p.attrs)       #输出p
print(type(soup.title.attrs))   #输出 <class 'str'>

print(soup.name) #[document]

运行结果:



代码4:

import requests
from bs4 import BeautifulSoup #注意这里不是用BeautifulSoup4,注意严格区分大小写

r=requests.get(url='https://news.qq.com/a/20180409/001200.htm')
# print(r)
# print(r.text)

soup=BeautifulSoup(r.text,'lxml') #用'lxml'库去解析r.text;   如果不写'lxml'则表示用Python自带带库去解析
#print(type(r.text))    #<class 'str'>   文本文件
#print(type(soup))   #<class 'bs4.BeautifulSoup'>   识别每个标签带意义
#print(soup.prettify())   #输出有缩进带源代码

# print(soup.title) #输出标题,如:<title>人民日报评论:2018中国将会勇敢地把开放大门推开更多_新闻_腾讯网</title>
# print(soup.a)   #输出链接   识别的是第一个链接
# print(soup.p)  #输出段落内容  识别的是第一个段落
#print(soup.head)  #把head里面的内容全部打出来,<head>****</head>    也就是此处里面的*****


# print(type(soup.title))   #<class 'bs4.element.Tag'>
#print(soup.title)

#属性attrs
#print(soup.title)  #title没有任何属性
print(soup.a.attrs['title']) #直接得到内容
print(soup.a.attrs['href'])  #直接得到链接
print(soup.p.attrs['style'])       #输出p
#print(type(soup.title.attrs))   #输出 <class 'str'>

#print(soup.name) #[document]

运行结果:


To be continued...

猜你喜欢

转载自blog.csdn.net/dhq15800562693/article/details/79865409