python简单爬虫 多线程爬取京东淘宝信息教程

1,需要准备的工作,电脑已经安装好python,如果没装,可以执行去https://www.python.org/官网下载,初学者可以安装轻量级的wingide python开发工具,python安装成功后配置好环境变量,在dos环境使用pip install 模块 将需要用到的模块添加到python中。

需要添加的模块有 lxml,Pool,requests,json,pymongo或者pymysql

1,打开wingide 新建一个python文件  在里面导入我们需要用到的模块

python简单爬虫 多线程爬取京东淘宝信息教程


2,寻找我们需要爬取的网页  这里 我以京东的搜索为例  url为:https://search.jd.com/Search?keyword=%E6%89%8B%E6%9C%BA&enc=utf-8&pvid=4e336fe84d3247f0b0795a790b09b422  主要是获取京东手机的名称,价格以及一些其他详细信息

写一个方法获取我们初次爬取的网页    get_sku_id(url)

python简单爬虫 多线程爬取京东淘宝信息教程

3,由于京东搜索查询的手机信息无法完全满足我们所需要的信息  所以需要进一步去详情页面爬取内容

     写一个爬取手机具体内容的方法 get_phone_content(sku)   sku为京东为手机设置的独特id 

   python简单爬虫 多线程爬取京东淘宝信息教程

4,通过浏览器工具查询,我们可以知道获取价格是单独通过一个请求返回让界面显示的,所以如果我们想在手机详情页面获取价格就必须再次请求这个链接才能获取价格

python简单爬虫 多线程爬取京东淘宝信息教程

在这里我建议大家使用火狐浏览器查找    谷歌看的眼睛花  得知的url为:https://p.3.cn/prices/mgets?callback=jQuery1346298&type=1&area=1_72_2799_0&pdtk=&pduid=1713961549&pdpin=&pin=null&pdbp=0&skuIds=J_{手机独特的ID}

写一个方法来获取每个手机的价格

get_phone_price(sku)

python简单爬虫 多线程爬取京东淘宝信息教程

5,在主页面解析的方法(get_sku_id)中调用我们的两个子页面的方法(get_phone_content,get_phone_price) 传入手机独特的id

python简单爬虫 多线程爬取京东淘宝信息教程

6,将集合存入到我们的数据库中   mysql或者mongodb 都可以

python简单爬虫 多线程爬取京东淘宝信息教程

写一个主函数调用我们的get_sku_id方法即可

python简单爬虫 多线程爬取京东淘宝信息教程

主流程图如下:

python简单爬虫 多线程爬取京东淘宝信息教程


github地址:https://github.com/ElvisLiang/reptilefortaobao.git