python网络爬虫(二)——数据的清洗与组织

学会了网络爬虫发送请求后,我们可以获得一段目标的HTML代码,但是还没有把数据提取出来,接下来需要进行数据的清洗与组织。

python 复制代码
for item in data:
    result={
        'title':item.get_test(),
        'link':item.get('href')
    }
    print(result)

首先明确要提取的数据是标题和链接,标题在a标签中,提取标签的正文用get_text()方法;链接在a标签的href属性中,提取标签中的href属性用get()方法,在括号中指定要提取的属性数据,即get('href')

需要使用的正则符合如下:

\d:匹配数字

+:匹配前一个字符1次或多次

在Python中调用正则表达式时使用re库,这个库不用安装,可以直接调用。可以用如下代码:

python 复制代码
import requests
import re
from bs4 import BeautifulSoup

url = 'https://www.bilibili.com/video/BV1TC4y1N7dB/?spm_id_from=333.1007.0.0&vd_source=912d1bec97cad7dac820d2ba865f116a'
strhtml = requests.get(url)
#print(strhtml.text)

soup = BeautifulSoup(strhtml.text,'lxml')
data = soup.select('#main >div >div.mtop.firstMod.clearfix>div.centerBox>ul.newsList>li>a')
print(data)

for item in data:
    result={
        'title':item.get_test(),
        'link':item.get('href')
        'ID:'re.findall('\d+',item.get('href'))
    }
    print(result)
相关推荐
2301_795167201 分钟前
Python 高手编程系列八:缓存
开发语言·python·缓存
闲人编程11 分钟前
Django测试框架深度使用:Factory Boy与Fixture对比
数据库·python·django·sqlite·钩子·fixture·codecapsule
梅花1413 分钟前
基于Django房屋租赁系统
后端·python·django·bootstrap·django项目·django网站
qq_124987075316 分钟前
基于SpringBoot技术的企业请假审批管理系统的设计与实现(源码+论文+部署+安装)
java·spring boot·后端·信息可视化·毕业设计
今天没有盐18 分钟前
Python数据分析实战:从超市销售到教学评估
python·pycharm·编程语言
BBB努力学习程序设计31 分钟前
Java方法详解:提升代码复用性与可读性的利器
java
BBB努力学习程序设计32 分钟前
Java运算符完全指南:让代码学会“计算”和“判断”
java
s***87271 小时前
Vllm进行Qwen2-vl部署(包含单卡多卡部署及爬虫请求)
爬虫
用户84913717547161 小时前
ThreadLocal 源码深度解析:JDK 设计者的“妥协”与“智慧”
java·后端
用户0304805912631 小时前
# 【Maven避坑】源码去哪了?一文看懂 Maven 工程与打包后的目录映射关系
java·后端