苏宁易购的商品价格请求URL为

https://pas.suning.com/nspcsale_0_000000000152709847_000000000152709847_0000000000_10_010_0100101_20268_1000000_9017_10106_Z001___R0104002_46.5_0_.html?callback=pcData&_=1503023077300

价格在返回的数据中结构为:pcData[0]–>data–>price–>saleInfo–>0–>promotionPrice。

但是上面的URL很难看出是什么结构,并且也不知道需要的信息应该从哪里获得。所以直接访问URL这种方法不具备通用性。

"""

from PySide.QtGui import *

from PySide.QtWebKit import *

from PySide.QtCore import *

"""

from PySide import *

import time

class BrowserRender(QWebView):

def __init__(self, show=True):

self.app = QApplication(sys.argv)

QWebView.__init__(self)

if show:

self.show()

def download(self, url, timeout=60):

loop = QEventLoop()

timer = QTimer()

timer.setSingleShot(True)

timer.timeout.connect(loop.quit)

self.loadFinished.connect(loop.quit)

self.load(QUrl(url))

timer.start(timeout * 1000)

loop.exec_()

if timer.isActive():

timer.stop()

return self.html()

else:

print "Request time out: " + url

def html(self):

return self.page().mainFrame().toHtml()

def find(self, pattern):

return self.page().mainFrame().findAllElements(pattern)

def attr(self, pattern, name, value):

for e in self.find(pattern):

e.setAttribute(name, value)

def text(self, pattern, value):

for e in self.find(pattern):

e.setPlainText(value)

def click(self, pattern):

for e in self.find(patter):

e.evaluateJavaScript("this.click()")

"""

def wait_load(self, pattern, timeout=60):

deadline = time.time() + timeout

while time.time() < deadline:

self.app.processEvents()

matches = self.find(pattern)

if matches:

return matches

print "wait load time out"

"""

9

if __name__=="__main__":

br = BrowserRender()

br.download("https://product.suning.com/0000000000/152709847.html?srcpoint=index3_homepage1_32618213038_prod02")

price = br.find("span.mainprice" )

print price[0].toPlainText().strip()

如您对本文有疑问或者有任何想说的,请点击进行留言回复,万千网友为您解惑!

python秒杀神器苏宁_Python爬虫——实战三:爬取苏宁易购的商品价格相关推荐

  1. python爬取汽车之家_python爬虫实战之爬取汽车之家网站上的图片

    随着生活水平的提高和快节奏生活的发展.汽车开始慢慢成为人们的必需品,浏览各种汽车网站便成为购买合适.喜欢车辆的前提.例如汽车之家网站中就有最新的报价和图片以及汽车的相关内容,是提供信息最快最全的中国汽 ...

  2. go爬虫和python爬虫哪个好_python 爬虫实战项目--爬取京东商品信息(价格、优惠、排名、好评率等)-Go语言中文社区...

    利用splash爬取京东商品信息 一.环境 window7 python3.5 pycharm scrapy scrapy-splash MySQL 二.简介 为了体验scrapy-splash 的动 ...

  3. python爬虫爬图片教程_python爬虫实战之爬取京东商城实例教程

    前言 本文主要介绍的是利用python爬取京东商城的方法,文中介绍的非常详细,下面话不多说了,来看看详细的介绍吧. 主要工具 scrapy BeautifulSoup requests 分析步骤 1. ...

  4. python 爬取贝壳网小区名称_Python爬虫实战:爬取贝壳网二手房40000条数据

    前言 本文的文字及图片来源于网络,仅供学习.交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理 以下文章来源于啤酒就辣条 ,作者啤酒就辣条 一.网页分析 爬取贝壳网石家庄二 ...

  5. 利用python爬取租房信息_Python爬虫实战(1)-爬取“房天下”租房信息(超详细)

    #前言html 先看爬到的信息:python 今天主要用到了两个库:Requests和BeautifulSoup.因此我先简单的说一下这两个库的用法,提到的都是此文须要用到的.编程 #Requests ...

  6. python爬虫爬取教程_python爬虫实战之爬取京东商城实例教程

    前言 本文主要介绍的是利用python爬取京东商城的方法,文中介绍的非常详细,下面话不多说了,来看看详细的介绍吧. 主要工具 scrapy BeautifulSoup requests 分析步骤 1. ...

  7. python爬百度贴吧_Python爬虫实战之爬取百度贴吧帖子

    大家好,上次我们实验了爬取了糗事百科的段子,那么这次我们来尝试一下爬取百度贴吧的帖子.与上一篇不同的是,这次我们需要用到文件的相关操作. 本篇目标对百度贴吧的任意帖子进行抓取 指定是否只抓取楼主发帖内 ...

  8. python安卓手机爬虫_python爬虫实战之爬取安卓apk

    当前市面上有大量的应用市场,这些应用市场作为各个安卓开发者的分发渠道,占据着重要的位置.如果我们需要批量下载apk用于研究,那么就需要用到爬虫技术,这里仅仅介绍一个简单的例子,即爬取应用宝上的apk. ...

  9. 如何运用python爬游戏皮肤_Python爬虫实战之 爬取王者荣耀皮肤

    王者荣耀是目前非常火的一款游戏,相信大家都对其中的人物很感兴趣,那么今天就带大家来爬取王者荣耀的皮肤,可以选一款喜欢的来当电脑壁纸.第一步,拿到url地址 第二步,获取各个人物皮肤数据 第三步,保存文 ...

最新文章

  1. 2019年CV领域,值得一看的综述文章!
  2. Markdown矩阵、表格和数学公式
  3. mysql怎么把字符变成数字_mysql将字符转换成数字
  4. java fastutil_具有FastUtil的精简Java集合
  5. JAXB –新手的观点,第2部分
  6. 属性被分为八大类不包括_家庭软装八大类有哪些 软装八大类风格有什么特点...
  7. 中国科技大学计算机学院叶辉,中国科技大学计算机科学与技术学院导师教师师资介绍简介-黄文超...
  8. 回复《论WEB标准专家》。
  9. pmbok第六版_英文版(带目录).pdf_书籍分享 | 高等数学(第六版)含解析~同济大学...
  10. 从哥尼斯堡“七桥问题”到盖洛普“优势识别器”
  11. 中职学校计算机教师 述职报告,中学教师个人述职报告4篇
  12. 计算机音量程序是哪个键,电脑如何设置音量快捷键
  13. 泰尔指数r语言_EG指数:从繁琐到简单
  14. c语言 calloc ,realloc 的使用
  15. pyscripter与python的关系_python开发环境PyScripter中文乱码问题解决方案
  16. WEB2.0下的金蛋 什么样的商业模式会成功?
  17. 简单的YouTube菜单效果
  18. 常用的外贸英语口语汇总
  19. 穿越时间的蛀洞——书评《Java企业设计模式》
  20. 解决wget下载https时报错

热门文章

  1. del rd命令行下删除文件不需要确认
  2. 运维监控工具之 Nagios 客户端安装(二)
  3. ci 框架插入时返回插入的id号
  4. vc 国际化的资源文件处理
  5. Exchange数据保护
  6. vector 声明固定长度的数组
  7. 设计模式-原型模式(Prototype)
  8. yum groupinstall “Development Tools“查看其软件列表
  9. 重置mysql密码的命令
  10. linux find批量替换java文件中字符串