Day26.爬虫案例一:拍拍网

Python爬虫实战:京东拍拍验机(帮你买到最完美的二手iPhone) 文章目录网站介绍&使用痛点网站分析项目实施1. 爬取commodityId1.1 失败的爬取思路1.2 改进后的巧妙的爬取思路2. 增加筛选项3. 筛选所有商品 网站介绍&使用痛点   如图1所示,京东拍拍二手于近期上线了一个新平台:拍拍验机,顾客可以通过手机京东客户端,在拍拍验机上挑选购买心仪的二手电子产品(目前均为固定品牌的手机,如二手小米8、二手iPhone 7 Plus)。... 阅读详情

爬虫案例一:拍拍网



前言

本文主要是通过学习的知识,写了一个简单的小爬虫,获取了拍拍网的产品信息,并存贮在mongodb中。


一. 拍拍网案例

这里主要是爬取了拍拍网(京东旗下的一个二手市场)的部分商品(商品的内容可以自己指定)。然后用多线程爬取你输入的商品,并将这些内容导入到mongodb中。

1.1 首先将需要的包导入

import pymongo
import requests
from bs4 import BeautifulSoup
import time
from multiprocessing import Pool

1.2 创建一个爬取拍拍网的类

class paipai_spider():
    #  创建数据库以及相应的表格
    client = pymongo.MongoClient('localhost', 27017)
    paipai = client['paipai']
    ershoushouji = paipai['ershoushouji']

    def get_soup(self, url):
        headers = {
            "User-Agent": "*****",
            "Cookie": "*****",
            "Referer": "******"
        }

        response = requests.get(url, headers=headers)
        soup = BeautifulSoup(response.text, "lxml")
        return soup

    #  通过调用get_soup函数,获得我们需要的数据
    def get_data(self, url):
        soup = self.get_soup(url)

        # 这是获取的一页的数据
        urls = [i.get("href") for i in soup.select("#J_goodsList > ul > li > div > div.p-img > a")]  # 链接
        titles = [i.get("title") for i in soup.select("#J_goodsList > ul > li > div > div.p-img > a")]  # 标题
        images = [i.get("data-lazy-img") for i in
                  soup.select("#J_goodsList > ul > li > div > div.p-img > a > img")]  # 图片
        prices = [i.text for i in soup.select("#J_goodsList > ul > li > div > div.p-price > strong > i")]  # 价格
        infos = [i.text.split("\n")[-1] for i in
                 soup.select("#J_goodsList > ul > li > div > div.p-name.p-name-type-2 > a > em")]  # 信息
        comments = [i.get("href") for i in
                    soup.select("#J_goodsList > ul > li > div > div.p-commit > strong > a")]  # 评论
        shop_names = [i.get("title") for i in soup.select("#J_goodsList > ul > li > div > div.p-shop > span > a")]  # 店名
        discounts = [[i.text for i in i.select("i")] for i in
                     soup.select("#J_goodsList > ul > li > div > div.p-icons")]  # 优惠

        time.sleep(2)  # 以防爬取的太密集被反爬虫,这里休息两秒。

        # 将这些数据存贮成字典形式
        for url, title, image, price, info, comment, shop_name, discount in zip(urls, titles, images, prices, infos,
                                                                                comments, shop_names, discounts):
            data = {
                "urls": url,
                "titles": title,
                "images": image,
                "prices": price,
                "infos": info,
                "comments": comment,
                "shop_names": shop_name,
                "discounts": discount
            }
            self.ershoushouji.insert_one(data)
        print("Insert OK!")  # 爬完一页之后,显示一下。

    """
        主要是我们得进入该链接,然后看这个网页最大是多少页,然后将page进行设定,就可以获取所有该种二手产品的网页,
        当然了,首先第一步是输入该种产品的链接,最后返回该种产品的所有链接的一个列表。
        但是,好像网页不显示这个页码,也就是找不出来,很奇怪。。
        而且,本来只有100页的内容,也就是page=199就结束了,但是我发现,page=201同样也有内容。。
        所以,我就降低要求吧,比如每种二手产品,我们只爬取100页就好。

    """

    # 如何获取某一种产品的所有链接
    def get_type_urls(self, url):
        # 这里可以设定爬取多少页的内容
        return [url + "&page={}".format(i) for i in range(1, 201)]

    # 获得你想要的产品的链接
    def get_all_types(self, name):
        """
        param:
        	name:输入想要看的产品名称 ,输入类型为 字符串
        return:输出所有该类产品的所有链接,输出类型为字符串
        """

        return "https://search.jd.com/Search?keyword={}".format(name)

1.3 实现爬虫类并做测试。

if __name__ == "__main__":
    pool = Pool()  # 使用多线程

    paipai = paipai_spider()
    # product = ["二手手机", "电脑", "家电", "图书", "乐器", "奢侈品"]
    name = paipai.get_all_types("二手手机")  # 首先,先输入你想爬取的内容的种类

    urls = paipai.get_type_urls(name)  # 通过“name”,获取了关于“name”的所有链接

    # 在“urls”链接中,我逐个输入,就可以得到每条数据
    pool.map(paipai.get_data, (url for url in urls))

    print("Spider finish!")

总结

代码刚出炉的,在短时间内使用应该是没问题的。也算是对前面学习的爬虫知识的一个检验,其实也有很多需要修改和优化的地方,也恳请大家集思广益,谢谢大家。

溜了遛了,脑壳疼。Loading(26/100)。。。

利用SQL对拍拍贷数据进行逾期分析 一、分析背景和目的 拍拍贷成立于2007年6月,总部位于国际金融中心上海,是中国第一家网络信用借贷平台。与国内其他P2P平台相比,拍拍贷的最大特点在于采用纯线上模式运作,平台本身不参与借款,而是实施信息匹配、工具支持和服务等功能,借款人的借款利率在最高利率限制下,由自己设定。而这也是P2P网贷平台最原始的运作模式。 随着多年的经验积累,拍拍贷不管是在贷款总额上还是在风控方面都有所提高,而且目前基于... 阅读详情

相关推荐

【源码+文档】“魔镜杯”风控算法大赛拍拍贷风控模型

比赛数据:"拍拍贷"提供的数据包括信用违约标签(因变量)、建模所需的基础与加工字段(自变量)、相关用户的网络行为原始数据,数据字段已经做脱敏处理。本次实战采用的是初赛数据,包括3万条训练集和2万条测试集。数据文档包括:Master:每一行代表一个样本(一笔成功成交借款),每个样本包含200多个各类字段。Log_Info:借款人的登陆信息,每个样本含多条数据。Userupdate_Info:借款人修改信息,每个样本多条数据。

yuxibdd的博客 871

拍拍贷 爬虫

#-*- coding:utf-8 -*- import urllib2 import time import xlwt import re import csv from lxml import etree from threading import Thread from Queue import Queue import random import socket import ip_poo

HMMPO的博客 2791

拍拍贷数据资源,风控算法大赛的数据

拍拍贷数据资源,风控算法大赛的数据。可配合github上的demo

python京东自动签到领金豆_自动签到领金豆

功能:1、京豆签到2、领券签到3、拍拍二手签到4、金融签到领钢镚5、金融双签领取测试机型:华为P30使用说明:1.运行脚本前要先给程序开启无障碍权限,悬浮窗权限不一定需要开(只是看不到进度,还是会正常运行,结束了就停了,总体时间一分钟左右);2.无需root特别说明:1.手机上要有JD、JD金融两款软件;2.按音量上键可以停止程序往期神器:文字识别软件(电脑端+手机端)批量图片文字自动识...

weixin_35643153的博客 1636

DIV+CSS仿腾讯拍拍网导航菜单

DIV+CSS仿腾讯拍拍网导航菜单! 值得下载看看!资源免费,大家分享!! 更多免费资源 http://ynsky.download.csdn.net/

仿拍拍网源码

拍拍网是知名的网络零售商圈,也是国内成长最快、最受网民欢迎的C2C电子商务交易平台。在拍拍网成功的运行模式的启发下,在电子商务行业里的人们争相模仿拍拍网,从而诞生了”仿拍拍网源码”,所谓的仿拍拍网源码就是类似拍拍网,它不管是交易平台还是网站的后台管理系统、用户互动社区几乎都跟淘宝一样。 仿拍拍网源码是一种开源码, 基于PHP+MySQL技术MVC架构开发的网站源码。它是以消费者对消费者(C2C)经营模式的网站,直接为消费者提供电子商务活动的网站平台。

拍拍贷第三届“魔镜杯”启动:中科院、北大NLP大牛都在这里等你!

2018 年 6 月 5 日,由拍拍贷智慧金融研究院主办、上海浦东软件园联合主办的第三届“魔镜杯”大赛进入报名阶段。本次大赛荣幸邀请到了上海市软件行业协会和上海计算机软件...

Paper weekly 1700

ATE测试基础——直流参数测试

芯片测试在发展过程中诞生了许多术语,初次接触的人大部分都会被绕晕。因此为方便广大读者理解,在开始介绍测试项之前,需要对测试领域的名词进行解释。还有部分较为抽象的内容,需要略作展开。DUT——Device Under Test,正在被测试的器件Pin——器件引脚,信号引脚分为输入,输出,三态和双向四类,负责与外界进行信息交互;电源引脚分为电源和地两类,结构与信号引脚不同,负责给器件内部运行和外部输出提供电平。输入:在外部信号和器件内部逻辑之间起缓冲作用的信号输入通道;

你骄傲地飞远的博客 1万+

java 抓取拍拍贷网站数据

import java.io.BufferedWriter; import java.io.File; import java.io.FileWriter; import java.io.IOException; import java.util.List; import com.gargoylesoftware.htmlunit.BrowserVersion; import com.gargo

yesenfei的专栏 7196

Zlib1.2.11源码编译(Win10+VS2019)

下载 下载网址: zlib Home Site 得到文件: 解压缩到“D:\SourceCodes\zlib-1.2.11” 使用CMake配置、生成并打开项目 将CMakeLists.txt拖入CMake,配置(Configure): 生成(Generate) 打开项目(Open Project),CMake调用VS2019打开项目 生成debug版本 构建项目ALL_BUILD。成功生成debug版本 在“D:\Sourc...

Alexabc3000的专栏 1893

SAR成像概述

1. 发展概述 雷达是英文Radar(Radio detection and ranging)的音译,原意为“无线电探测与测距”。雷达的发明是无线电发展史上的里程碑,二战时,英国急需通过雷达探测空中金属物体来帮助搜寻德国飞机,这期间,雷达技术飞速发展,发展出了地对空、空对地轰炸、空对空火控、敌我识别等功能。雷达在第二次世界大战中发挥了重大作用,至今仍是军用和许多民用领域的重要传感器。 早期雷达系统通过时间延迟来测距,通过天线指向来测角,通过多普勒频移测速。1951年,Carl Wiley发现,通..

5072

利用python爬取人人贷网的数据

转自 http://mp.weixin.qq.com/s?__biz=MzA3MDg0MjgxNQ==&mid=2652390789&idx=1&sn=95bd2f843d7fc2d66ca4082fdd1b2c96&chksm=84da4555b3adcc438f6dd4bdcac14522e6a7f3547d72d19a7263e8ebf92447197ee889ffbe9f&mpshare=

hqr20627的博客 6928

TMS320F28377D双核开发例程 - DSP开发

首先,我们需要创建一个新的工程来进行开发。然后,选择适当的目标设备为TMS320F28377D,并设置工程的名称和存储位置。在上面的代码中,我们定义了一个128个元素的输入数组和输出数组。然后,我们使用一个简单的数字信号处理算法,将输入数组中的每个元素平方,并将结果存储到输出数组中。这个芯片的双核架构提供了更高的计算能力和灵活性,使得数字信号处理的开发更加高效和可靠。希望本文对您有所帮助!当应用程序在TMS320F28377D芯片上运行时,它将对输入数组中的每个元素进行平方运算,并将结果打印出来。

IfllUnity的博客 2517

【python爬虫】爬取网贷之家所有P2P平台基本数据并写入MYsql数据库

使用的是python3做的一个爬虫,主要用于爬取网贷之家上面的数据。比较粗糙,很多该封装的地方没有进行封装。如果需要每天进行的话,还需要人工进行操作。后期会考虑挂靠服务器定时进行爬取,哈哈先这么搞,剩下的以后再说。import urllibimport requests #导入两个爬虫包,忘了是用哪个了,嘻嘻import re,time,pymysql #导入正则表达式、时间处理、mysql连接包...

tywtan的博客 4911

RK3568平台开发系列讲解(DMA篇)DMA engine使用

DMA传输属于异步传输,在启动传输之前,slave driver需要将此次传输的一些信息(例如src/dst的buffer、传输的方向等)提交给dma engine(本质上是dma controller driver),dma engine确认okay后,返回一个描述符(由struct dma_async_tx_descriptor抽象)。DMA_PREP_PQ_DISABLE_P、DMA_PREP_PQ_DISABLE_Q、DMA_PREP_CONTINUE,PQ有关的操作,TODO。

内核笔记 1723

红队攻防渗透技术实战流程:云安全之云原生安全:特权模式和挂载模式

红队云攻防实战1. 什么是云 1. 什么是云

HACKONE的博客 573

拍拍网头部导航菜单_网页代码站(www.webdm.cn)

1 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 2 <html xmlns="http://www.w3.org/1999/xhtml"> 3 <head> ...

weixin_33918114的博客 1078

【知识图谱】neo4j安装与配置_社区版_2025(附完整安装软件包)

(经历过各种版本NEO4J,遇见杂七杂八的各种问题,也看过非常多很好的教程,特此来分享一下,为大家排排坑。

知识靠谱的博客 2万+

HTML网页制作主要内容

HTML网页制作一 我的第一个HTML网页 免费注册|关于拍拍|拍拍助理|联系我们 拍拍简介 腾讯拍拍网(WWW.paipai.com)是腾讯旗下电子商务交易平台, 网站与2005年9月

czyyanzi的专栏 928

麻辣香锅病毒分析

Spicy Hot Pot浏览器劫持病毒(麻辣香锅病毒)从2020年初被安全公司监测到,因其病毒模块带有MLXG_KM被安全行业代称麻辣香锅病毒。目前通过各种激活工具传播, 包括暴风激活、小马激活和KMS激活等诸多工具,疑似与下载站进行合作推广此类激活工具。Spicy Hot Pot 是一个浏览器劫持 Rootkit,它会将用户的主页更改为指向恶意软件操作员控制的页面,此外还会将内存转储从机器上传到预定义的服务器,并结合本地更新功能以确保其保持更新。通常浏览器劫持者会通过更改用户主页的恶意可执行文件或注册表

不忘初心,护天下安全! 4788

Outlook Express 6 (OE6) for Win7/Win8/Win10

英文版 Outlook Express6.0, 兼容Win7/Win10/WinXP,解压就可用。

html在线美化网站

Html在线美化压缩/转js - 在线工具 地址:http://tool.lu/html/   1、美化效果: 2、转化字符串拼接

weixin_33857230的博客 334

霍尼韦尔SoftMaster使用说明

霍尼韦尔SoftMaster使用说明

HTML5+CSS3 最酷的 loading 效果汇总

用 gif 图片来做 loading 的时代已经过去了,它显得太 low 了,而用 HTML5/CSS3 以及 SVG 和 canvas 来做加载动画显得既炫酷又逼格十足。这已经成为一种趋势。 这里收集了几十个用 html5 和 css3 实现的 loading 效果,以供学习参考。 01. CSS Rainbow Loader 演示 下载 02. Single e

肃之峰 1067

jdk-8u144-linux-x64.tar.gz.

该资源为搭建Linux系统Java环境用,资源的后缀为tar.gz格式的压缩包

汉书HE8,好用的汇编代码编写工具

汉书HE8,好用的汇编代码编写工具早期编写汇编代码所用功能强大

HTML5的Canvas组件

1、创建一个canvas标签 &lt;canvas id="test-canvas" width="300" height="200"&gt;&lt;/canvas&gt; 由于浏览器对HTML5标准支持不一致,所以,通常在&lt;canvas&gt;内部添加一些说明性HTML代码,如果浏览器支持Canvas,它将忽略&lt;canvas&gt;内部的HTML,如果浏览器不支持C

Akio的博客 1851

Day43.Python数据可视化(1)

文章目录前言一总结 前言 一 总结

Tomandjava的博客 5475

Day45. 数据分析实战(1):超市运营数据分析

Day45. 数据分析实战(1):超市运维数据分析 文章目录Day45. 数据分析实战(1):超市运维数据分析前言一. 读取数据二. 看哪些类别的商品比较畅销三. 哪些商品比较畅销四. 不同门店的销售额占比五. 超市客流高峰时间段总结 前言 本文主要是利用超市的运营数据进行分析,通过分析,对超市近期的运行状况有一定的直观了解。看能否得到些有用的消息来改进或者优化现有的运营方式,包括销售手段,客户经营等帮助超市改善经营现状,感觉蛮有意思滴。 一. 读取数据 我们将数据放在表格中,然后用 pandas

Tomandjava的博客 4050
上一篇: Day24.Web前端简介四
下一篇: Day27. 爬虫案例二:链家楼盘
评论 3
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值