Python网络数据抓取(5):Pandas

简介: Python网络数据抓取(5):Pandas

Pandas

Pandas 是一个 Python 库,它提供灵活的数据结构,使我们与数据的交互变得非常容易。我们将使用它将数据保存在 CSV 文件中。

obj={
   
   }

arr=[]

obj[“name”] = soup.find(“span”,{
   
   class:”a-size-large product-title-word-break}).text.lstrip()

obj[“price”] = soup.find(“span”,{
   
   class:”priceToPay”}).find(“span”,{
   
   class:”a-offscreen”}).text

obj[“rating”] = soup.find(“i”,{
   
   class:”a-icon-star”}).text.split(“ “)[0]

arr.append(obj)

首先,我们声明了一个对象和一个数组。然后我们将所有目标数据存储在该对象中。然后我们将这个对象放入一个数组中。现在,我们将使用 pandas 和该数组创建一个数据框,然后使用该数据框创建 CSV 文件。

df = pd.DataFrame(arr)
df.to_csv(‘amazon_data.csv’, index=False, encoding=’utf-8')

这将在您的文件夹中创建一个名为 amazon_data.csv 的 CSV 文件。

Pandas 让我们的工作变得容易多了。使用这种技术,您可以抓取任何规模的亚马逊页面。

import requests
from bs4 import BeautifulSoup
import pandas as pd

obj={
   
   }
arr=[]

url = “https://www.amazon.com/dp/B08WVVBWCN"

headers = {
   
   “User-Agent”:”Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/105.0.0.0 Safari/537.36"}

resp = requests.get(url, headers=headers)
print(resp.status_code)
soup=BeautifulSoup(resp.text,’html.parser’)

obj[“name”] = soup.find(“span”,{
   
   class:”a-size-large product-title-word-break}).text.lstrip()

obj[“price”] = soup.find(“span”,{
   
   class:”priceToPay”}).find(“span”,{
   
   class:”a-offscreen”}).text

obj[“rating”] = soup.find(“i”,{
   
   class:”a-icon-star”}).text.split(“ “)[0]

arr.append(obj)
df = pd.DataFrame(arr)
df.to_csv(‘amazon_data.csv’, index=False, encoding=’utf-8')

print(arr)

总结

正如你所观察到的,Requests、BeautifulSoup(BS4)和pandas库极大地简化了我们从亚马逊网站提取数据的过程。显而易见,如果你打算利用requests库来批量抓取亚马逊的数百万页面,那么你需要处理好多事项,包括设置合适的请求头、进行代理服务器的轮换以及处理验证码问题。

然而,如果你选择使用其他框架(Scrapy)提供的网页抓取API服务,那么你就无需亲自处理这些繁琐的步骤。其他框架(Scrapy)会利用其庞大的代理和请求头资源库来高效地完成对亚马逊网站的抓取任务。

值得一提的是,数据抓取工具的应用范围并不局限于亚马逊,它能够抓取任何网站的数据,哪怕是那些需要JavaScript渲染的复杂网站。

相关文章
|
1天前
|
Python
python pandas学习(一)
该代码段展示了四个主要操作:1) 删除指定列名,如商品id;2) 使用正则表达式模糊匹配并删除列,例如匹配订单商品名称1的列;3) 将毫秒级时间戳转换为带有时区调整的日期时间格式,并增加8小时以适应本地时区;4) 将列表转换为DataFrame后保存为Excel文件,文件路径和名称根据变量拼接而成。
12 3
|
1天前
|
数据采集 存储 数据挖掘
深入剖析 Python 爬虫:淘宝商品详情数据抓取
深入剖析 Python 爬虫:淘宝商品详情数据抓取
|
4天前
|
存储 数据采集 数据库
Python爬虫实战:股票分时数据抓取与存储
Python爬虫实战:股票分时数据抓取与存储
|
7天前
|
机器学习/深度学习 人工智能 算法
基于Python深度学习的【蘑菇识别】系统~卷积神经网络+TensorFlow+图像识别+人工智能
蘑菇识别系统,本系统使用Python作为主要开发语言,基于TensorFlow搭建卷积神经网络算法,并收集了9种常见的蘑菇种类数据集【"香菇(Agaricus)", "毒鹅膏菌(Amanita)", "牛肝菌(Boletus)", "网状菌(Cortinarius)", "毒镰孢(Entoloma)", "湿孢菌(Hygrocybe)", "乳菇(Lactarius)", "红菇(Russula)", "松茸(Suillus)"】 再使用通过搭建的算法模型对数据集进行训练得到一个识别精度较高的模型,然后保存为为本地h5格式文件。最后使用Django框架搭建了一个Web网页平台可视化操作界面,
51 11
基于Python深度学习的【蘑菇识别】系统~卷积神经网络+TensorFlow+图像识别+人工智能
|
25天前
|
安全 Linux 网络安全
利用Python脚本自动备份网络设备配置
通过本文的介绍,我们了解了如何利用Python脚本自动备份网络设备配置。该脚本使用 `paramiko`库通过SSH连接到设备,获取并保存配置文件。通过定时任务调度,可以实现定期自动备份,确保网络设备配置的安全和可用。希望这些内容能够帮助你在实际工作中实现网络设备的自动化备份。
51 14
|
1月前
|
存储 数据挖掘 数据处理
Python Pandas入门:行与列快速上手与优化技巧
Pandas是Python中强大的数据分析库,广泛应用于数据科学和数据分析领域。本文为初学者介绍Pandas的基本操作,包括安装、创建DataFrame、行与列的操作及优化技巧。通过实例讲解如何选择、添加、删除行与列,并提供链式操作、向量化处理、索引优化等高效使用Pandas的建议,帮助用户在实际工作中更便捷地处理数据。
47 2
|
1月前
|
机器学习/深度学习 人工智能 算法
基于Python深度学习的眼疾识别系统实现~人工智能+卷积网络算法
眼疾识别系统,本系统使用Python作为主要开发语言,基于TensorFlow搭建卷积神经网络算法,并收集了4种常见的眼疾图像数据集(白内障、糖尿病性视网膜病变、青光眼和正常眼睛) 再使用通过搭建的算法模型对数据集进行训练得到一个识别精度较高的模型,然后保存为为本地h5格式文件。最后使用Django框架搭建了一个Web网页平台可视化操作界面,实现用户上传一张眼疾图片识别其名称。
135 5
基于Python深度学习的眼疾识别系统实现~人工智能+卷积网络算法
|
2月前
|
算法 网络协议 Python
探秘Win11共享文件夹之Python网络通信算法实现
本文探讨了Win11共享文件夹背后的网络通信算法,重点介绍基于TCP的文件传输机制,并提供Python代码示例。Win11共享文件夹利用SMB协议实现局域网内的文件共享,通过TCP协议确保文件传输的完整性和可靠性。服务器端监听客户端连接请求,接收文件请求并分块发送文件内容;客户端则连接服务器、接收数据并保存为本地文件。文中通过Python代码详细展示了这一过程,帮助读者理解并优化文件共享系统。
|
2月前
|
机器学习/深度学习 人工智能 算法
猫狗宠物识别系统Python+TensorFlow+人工智能+深度学习+卷积网络算法
宠物识别系统使用Python和TensorFlow搭建卷积神经网络,基于37种常见猫狗数据集训练高精度模型,并保存为h5格式。通过Django框架搭建Web平台,用户上传宠物图片即可识别其名称,提供便捷的宠物识别服务。
356 55
|
2月前
|
机器学习/深度学习 人工智能 算法
【宠物识别系统】Python+卷积神经网络算法+深度学习+人工智能+TensorFlow+图像识别
宠物识别系统,本系统使用Python作为主要开发语言,基于TensorFlow搭建卷积神经网络算法,并收集了37种常见的猫狗宠物种类数据集【'阿比西尼亚猫(Abyssinian)', '孟加拉猫(Bengal)', '暹罗猫(Birman)', '孟买猫(Bombay)', '英国短毛猫(British Shorthair)', '埃及猫(Egyptian Mau)', '缅因猫(Maine Coon)', '波斯猫(Persian)', '布偶猫(Ragdoll)', '俄罗斯蓝猫(Russian Blue)', '暹罗猫(Siamese)', '斯芬克斯猫(Sphynx)', '美国斗牛犬
220 29
【宠物识别系统】Python+卷积神经网络算法+深度学习+人工智能+TensorFlow+图像识别

热门文章

最新文章

推荐镜像

更多