抓取网页新闻(网页写一个简单的文件文件解析(选择器)定位数据找出)

优采云 发布时间: 2022-04-04 01:13

  抓取网页新闻(网页写一个简单的文件文件解析(选择器)定位数据找出)

  (1)连接:服务器通过ServerSocket类对象*敏*感*词*8000端口,*敏*感*词*后建立连接,打开socket虚拟文件。

  (2)Request: 浏览器创建一个与建立socket连接相关的流对象后,获取请求,如果是GET请求,则从请求信息中获取访问的HTML文件名,发送向服务器请求。

  (3)响应:服务收到请求后,查找相关目录文件,如果不存在,则返回错误信息;如果存在,则对html文件进行HTTP头处理然后响应浏览器解析html文件,如果还收录对图片、视频等的请求,则浏览器再次访问web服务器,异常获取图片、视频等,并组装显示。

  2.使用requests库抓取网站数据:

  代码如下:

  

  

  1 import requests

2 url='http://www.chinaedu.edu.cn/'

3 #网络资源获取

4 res=requests.get(url)

5 res.encoding = 'utf-8'

6 print(res.text)

  请求

  运行截图:

  

  3.了解网页

  编写一个收录多个标签、类、ids的简单html文件

  代码如下:

  

  

   1

2

3

4

5

6 这是一个头部标签

7 然后是P标签里面有a标签,也就是点击以后会跳转到一个链接 跳转到新浪网 里面

8

9

10

11

12 第一

13 第二

14 第三

15 第四

16

17

18

19

20

  html

  运行截图:

  

  4.用 Beautiful Soup 解析网页:

  通过BeautifulSoup(html_sample,'html.parser')将上面的html文件解析成DOM Tree

  选择(选择器)位置数据

  查找带有特定标签的 html 元素

  查找具有特定类名的 html 元素

  查找具有特定 id 名称的 html 元素

  代码如下:

  

  

   1 from bs4 import BeautifulSoup

2 with open(r'test.html','r',encoding='utf-8') as f:

3 text=f.read()

4 soup=BeautifulSoup(text,'html.parser')

5 #特定标签的html元素

6 a=soup.select('li')[2].text

7 # 特定类名的html元素

8 b=soup.select('.inner')[0].text

9 # 特定id名的html元素

10 c=soup.select('#intro')[0].text

11 print(a,b,c)

  美丽的汤

  运行截图:

  

  三、提取校园新闻的标题、发布时间和发布单位

0 个评论

要回复文章请先登录注册


官方客服QQ群

微信人工客服

QQ人工客服


线