静态网页提取文本数据

爬虫课后作业报告

  • 准备
  1. 了解需要用到的requests库的知识与应用

https://pypi.org/project/requests/

  1. 在Pycharm中安装requests库
  1. file->settings

  1. 选择project下的interpreter,下滑寻找是否有requests,若有则不需要再进行安装,否则点击左上角+号,在搜索框中填入requests,点击安装。

 

  1. 散户大家庭_跟踪个股资金流向查询第一站[www.shdjt.com]查看该网页源代码

 

  • 过程
  1. 了解静态网页解析办法,学习beautifulsoup用法

  1. 构建header

 

 

  1. 解析网页

 

 

  1. 可以看出所有需要爬取的数据都在<td class=”tdred”>节点里,用find_all函数找到所有节点,遍历内容。以td的上一个节点tr作为操作对象

 

 

  1. 报错是因为找出来的tr节点不止一个,无法一次性找出所有td节点,所以需要循环遍历tr,输出其中的文字内容。通过查找,了解到HTML <td>标签中有一个abbr属性的值为text文本,即需要爬取的目标数据。

 

 

  1. 提取出所有文本

 

 

  • 代码

# 载入模块

import requests

from bs4 import BeautifulSoup

headers = {'user-agent':  'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/101.0.4951.41 Safari/537.36 Edg/101.0.1210.32'}

# 抓取网页源代码

# 指定url

url = 'http://www.shdjt.com/'

# 发起请求,get方法会返回一个响应对象

r = requests.get(url, headers=headers)

# 获取响应数据,text返回的是字符串形式的响应数据

soup = BeautifulSoup(r.content, 'html.parser')

# 解析网页

tr = soup.find_all('tr')

# 在soup里查找所有tr节点

for i in tr:

    print(i.text)

# 输出tr中所有txt文本

  • 最终效果

 

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值