首页 > 编程语言 >Python无框架分布式爬虫,爬取范例:拼多多商品详情数据,拼多多商品列表数据

Python无框架分布式爬虫,爬取范例:拼多多商品详情数据,拼多多商品列表数据

时间:2023-04-21 11:32:19浏览次数:44  
标签:__ 商品 Python 爬虫 爬取 采集 多多 数据

拼多多是中国领先的社交电商平台之一,是一家以“团购+折扣”为主要运营模式的电商平台。该平台上有海量的商品,对于商家和消费者来说都具有非常大的价值,因此,拼多多商品数据的采集技术非常重要。本文将介绍拼多多商品数据的采集技术。

一、拼多多商品的数据结构

拼多多的商品数据包含了以下信息:

商品的标题:商品的名称,主要描述商品的基本属性。

商品的ID:商品的唯一标识符,用于区分不同的商品,具有唯一性。

商品的价格:商品的售价和原价,包括折扣信息和团购价等。

商品的图片:商品的图片信息,包括主图和详情图等。

商品的描述:商品的详细描述信息,包括商品的特性,规格,功能等。

商品的付款信息:商品的付款方式,包括支付宝,微信等等。

二、拼多多商品的数据采集

拼多多商品的数据采集主要有以下两种方法:

1.手动数据采集

手动数据采集指的是直接在拼多多平台上搜索并手动复制商品数据。该方法适合采集小批量的商品数据,但不适用于大规模数据采集。手动采集需要手动输入搜索词,进行筛选后再复制所需的数据,该方法需要花费大量的时间和人力成本,效率较低。

1.1自动数据采集

自动化数据采集是目前应用最广泛的数据采集技术。拼多多的数据采集可以通过爬虫来自动获取。具体的步骤如下:

(1)选择爬虫框架并安装: Python爬虫框架有很多,如scrapy,beautiful soup等。安装步骤网上有很多教程,这里不再赘述。

(2)定义爬虫的起始链接:在拼多多平台上搜索自己想要的商品,并将链接进行复制。然后在自己编写的爬虫程序中,定义起始链接为刚才复制的拼多多商品搜索链接。

(3)处理网页:使用beautiful soup等库,对网页中的商品数据进行解析,提取自己所需要的数据。

(4)存储数据:一般采用文件存储和数据库存储两种方式。文件存储采用csv格式,数据库存储则可以采用mysql等数据库。

2.封装接口进行采集拼多多商品详情数据,拼多多商品优惠券数据,拼多多商品视频数据,拼多多商品销量数据,拼多多商品列表数据代码展示:

2.1 请求方式:HTTP  POST  GET

2.2 公共参数:

名称

类型

必须

描述

key

String


调用key(必须以GET方式拼接在URL中)

secret

String


调用密钥 (复制v:Taobaoapi2014 )

api_name

String


API接口名称(包括在请求地址中)[item_search,item_get,item_search_shop等]

cache

String


[yes,no]默认yes,将调用缓存的数据,速度比较快

result_type

String


[json,jsonu,xml,serialize,var_export]返回数据格式,默认为json,jsonu输出的内容中文可以直接阅读

lang

String


[cn,en,ru]翻译语言,默认cn简体中文

version

String


API版本

2.3.请求代码示例,支持高并发请求(CURL、PHP 、PHPsdk 、Java 、C# 、Python...)

# coding:utf-8
"""
Compatible for python2.x and python3.x
requirement: pip install requests
"""
from __future__ import print_function
import requests
# 请求示例 url 默认请求参数已经做URL编码
url = "https://api-gw.19970108018.cn/pinduoduo/item_get/?key=<您自己的apiKey>&secret=<您自己的apiSecret>&num_iid=1620002566"
headers = {
    "Accept-Encoding": "gzip",
    "Connection": "close"
}
if __name__ == "__main__":
    r = requests.get(url, headers=headers)
    json_obj = r.json()
    print(json_obj)

2.4.错误码代码解释说明

Python无框架分布式爬虫,爬取范例:拼多多商品详情数据,拼多多商品列表数据_拼多多商品详情接口

标签:__,商品,Python,爬虫,爬取,采集,多多,数据
From: https://blog.51cto.com/u_16076887/6212371

相关文章

  • python_数据分析与挖掘实战_词云
    #-*-coding:utf-8-*-#代码12-1评论去重的代码importpandasaspdimportreimportjieba.possegaspsgimportnumpyasnp#去重,去除完全重复的数据reviews=pd.read_csv("../../data/0404/reviews.csv")reviews=reviews[['content','content_ty......
  • Python | isinstance函数的使用
    isinstance是一个Python内置函数,用于检查一个对象是否是指定类或其子类的实例。isinstance(obj,cls)返回一个布尔值,表示obj是否是cls或其子类的实例。类似type()。isinstance()与type()区别:type()不会认为子类是一种父类类型,不考虑继承关系。isinstance()会认......
  • uiautomator2+python-模拟安卓键盘输入
    这种方法通常用于不知道控件的情况下的输入。第一步需要切换输入法,然后发送adb广播命令,具体使用方法如下d.set_fastinput_ime(True)先清除掉文本框的内容d.press("back")为收起键盘,可能存在键盘阻挡住别的页面元素,需要收起键盘d=u2.connect()d.set_fastinput_ime(Tr......
  • 一篇文章带你搞懂Python中的继承和多态
    今日鸡汤岩溜喷空晴似雨,林萝碍日夏多寒。一、继承的介绍继承是一种创建新的类的方式,新创建的叫子类,继承的叫父类、超类、基类。继承的特点就是子类可以使用父类的属性(特征、技能)。继承是类与类之间的关系。继承可以减少代码冗余、提高重用性。在现实生活中,继承一般指的是子女继承父......
  • 手把手教你用Python操纵Word自动编写离职报告
    今日鸡汤不堪玄鬓影,来对白头吟。前言大家好,我是吴老板,今天给大家分享一篇Python自动化文章。Python是自动化处理的一把好手,比如自动编写离职申请!!!安装pipinstallpython-docx-ihttps://pypi.douban.com/simple/基本用法创建一个docx文档fromdocximportDocumentfromdocx.enu......
  • [oeasy]python0135_命名惯用法_name_convention
    命名惯用法回忆上次内容上次了解了isidentifier的细节关于关键字关于下划线如何查询变量所指向的地址?id如何查询已有的各种变量?locals如果用一个变量a的值给另一个变量b赋值是什么样的过程呢??......
  • Sublime Text编辑器配置Python解释器简易教程
    今日鸡汤路漫漫其修远兮,吾将上下而求索。 前天在微信上遇到一个小伙伴问我一个关于Sublimetext配置Python解释器的问题,可能是初学者,对这方面还不是很懂,想使用快捷键但是徒劳一场,因为缺少Python解释器,直接按下快捷键Ctrl+B是不会得到想要的结果的。鉴于此,如果有小伙伴想使用Sub......
  • [oeasy]python0135_命名惯用法_name_convention
    命名惯用法回忆上次内容上次了解了isidentifier的细节关于关键字关于下划线 如何查询变量所指向的地址?id 如何查询已有的各种变量?locals 如果用一个变量a的值给另一个变量b赋值是什么样的过程呢??......
  • Ubuntu20.04 python3.8.10升级到python3.9
    为了部署opencv-python,安装了ubuntu20.04的虚拟机,很容易的安装了numpy、matplotlib、opencv模块。但python是3.8.10版本,网上学习视频的版本为3.9,所以也进行了升级。参考https://blog.csdn.net/wuxianbing2012/article/details/123532589,完成了本次升级。以下是参考博文的内容:......
  • Python openpyxl 的用法
    这里只教最实用的一种方法importopenpyxlwb=openpyxl.Workbook()#创建表格对象sheet=wb.worksheets[0]#获取当前表格(wb在创建时会自动创建一个sheet表格)sheet.cell(row=1,column=2,value="456")wb.save('test.xlsx')需要注意的是:sheet.cell函数的参数row,......