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 原生爬虫教程:网络爬虫的基本概念和认知
网络爬虫是一种自动抓取互联网信息的程序,广泛应用于搜索引擎、数据采集、新闻聚合和价格监控等领域。其工作流程包括 URL 调度、HTTP 请求、页面下载、解析、数据存储及新 URL 发现。Python 因其丰富的库(如 requests、BeautifulSoup、Scrapy)和简洁语法成为爬虫开发的首选语言。然而,在使用爬虫时需注意法律与道德问题,例如遵守 robots.txt 规则、控制请求频率以及合法使用数据,以确保爬虫技术健康有序发展。
203 31
|
1月前
|
存储 监控 算法
基于 Python 哈希表算法的局域网网络监控工具:实现高效数据管理的核心技术
在当下数字化办公的环境中,局域网网络监控工具已成为保障企业网络安全、确保其高效运行的核心手段。此类工具通过对网络数据的收集、分析与管理,赋予企业实时洞察网络活动的能力。而在其运行机制背后,数据结构与算法发挥着关键作用。本文聚焦于 PHP 语言中的哈希表算法,深入探究其在局域网网络监控工具中的应用方式及所具备的优势。
72 7
|
1月前
|
存储 数据库 Python
利用Python获取网络数据的技巧
抓起你的Python魔杖,我们一起进入了网络之海,捕捉那些悠游在网络中的数据鱼,想一想不同的网络资源,是不是都像数不尽的海洋生物,我们要做的,就是像一个优秀的渔民一样,找到他们,把它们捕获,然后用他们制作出种种美味。 **1. 打开魔法之门:请求包** 要抓鱼,首先需要一个鱼网。在Python的世界里,我们就是通过所谓的“请求包”来发送“抓鱼”的请求。requests是Python中常用的发送HTTP请求的库,用它可以方便地与网络上的资源进行交互。所谓的GET,POST,DELETE,还有PUT,这些听起来像偶像歌曲一样的单词,其实就是我们鱼网的不同方式。 简单用法如下: ``` im
63 14
|
2月前
|
机器学习/深度学习 人工智能 算法
基于Python深度学习的【害虫识别】系统~卷积神经网络+TensorFlow+图像识别+人工智能
害虫识别系统,本系统使用Python作为主要开发语言,基于TensorFlow搭建卷积神经网络算法,并收集了12种常见的害虫种类数据集【"蚂蚁(ants)", "蜜蜂(bees)", "甲虫(beetle)", "毛虫(catterpillar)", "蚯蚓(earthworms)", "蜚蠊(earwig)", "蚱蜢(grasshopper)", "飞蛾(moth)", "鼻涕虫(slug)", "蜗牛(snail)", "黄蜂(wasp)", "象鼻虫(weevil)"】 再使用通过搭建的算法模型对数据集进行训练得到一个识别精度较高的模型,然后保存为为本地h5格式文件。最后使用Djan
164 1
基于Python深度学习的【害虫识别】系统~卷积神经网络+TensorFlow+图像识别+人工智能
|
3月前
|
机器学习/深度学习 人工智能 算法
基于Python深度学习的【蘑菇识别】系统~卷积神经网络+TensorFlow+图像识别+人工智能
蘑菇识别系统,本系统使用Python作为主要开发语言,基于TensorFlow搭建卷积神经网络算法,并收集了9种常见的蘑菇种类数据集【"香菇(Agaricus)", "毒鹅膏菌(Amanita)", "牛肝菌(Boletus)", "网状菌(Cortinarius)", "毒镰孢(Entoloma)", "湿孢菌(Hygrocybe)", "乳菇(Lactarius)", "红菇(Russula)", "松茸(Suillus)"】 再使用通过搭建的算法模型对数据集进行训练得到一个识别精度较高的模型,然后保存为为本地h5格式文件。最后使用Django框架搭建了一个Web网页平台可视化操作界面,
210 11
基于Python深度学习的【蘑菇识别】系统~卷积神经网络+TensorFlow+图像识别+人工智能
|
2月前
|
监控 算法 安全
公司电脑网络监控场景下 Python 广度优先搜索算法的深度剖析
在数字化办公时代,公司电脑网络监控至关重要。广度优先搜索(BFS)算法在构建网络拓扑、检测安全威胁和优化资源分配方面发挥重要作用。通过Python代码示例展示其应用流程,助力企业提升网络安全与效率。未来,更多创新算法将融入该领域,保障企业数字化发展。
77 10
|
2月前
|
存储 监控 API
1688平台API接口实战:Python实现店铺全量商品数据抓取
本文介绍如何使用Python通过1688开放平台的API接口自动化抓取店铺所有商品数据。首先,开发者需在1688开放平台完成注册并获取App Key和App Secret,申请“商品信息查询”权限。接着,利用`alibaba.trade.product.search4trade`接口,构建请求参数、生成MD5签名,并通过分页机制获取全量商品数据。文中详细解析了响应结构、存储优化及常见问题处理方法,还提供了竞品监控、库存预警等应用场景示例和完整代码。
|
2月前
|
机器学习/深度学习 API Python
Python 高级编程与实战:深入理解网络编程与异步IO
在前几篇文章中,我们探讨了 Python 的基础语法、面向对象编程、函数式编程、元编程、性能优化、调试技巧、数据科学、机器学习、Web 开发和 API 设计。本文将深入探讨 Python 在网络编程和异步IO中的应用,并通过实战项目帮助你掌握这些技术。
|
3月前
|
Python
python pandas学习(一)
该代码段展示了四个主要操作:1) 删除指定列名,如商品id;2) 使用正则表达式模糊匹配并删除列,例如匹配订单商品名称1的列;3) 将毫秒级时间戳转换为带有时区调整的日期时间格式,并增加8小时以适应本地时区;4) 将列表转换为DataFrame后保存为Excel文件,文件路径和名称根据变量拼接而成。
44 3
|
3月前
|
数据采集 存储 数据挖掘
深入剖析 Python 爬虫:淘宝商品详情数据抓取
深入剖析 Python 爬虫:淘宝商品详情数据抓取

热门文章

最新文章