python实现查询苹果手机维修进度


Posted in Python onMarch 16, 2015

万恶的苹果,我的5s最近坏了,官方的零售店是根本就预约不到啊预约不到啊,所以只好去找授权维修点了,昨天送去之后人家说可能要返厂,周期大概20天左右,我直接就醉了,20天啊,快一个月啊,等手机到手都快清明了,fuck.今天下午无聊在网上搜了下看能不能查到维修进度,发现在苹果官网就可以查看,不过我的机子目测还没有送修,现在还查不到维修进度,趁着无聊没事干,写了个程序来即使的查看维修进度.

python的urllib2已经添加了对于cookie的支持,这对于抓取一些要登录的站点或者要设置cookie的站点很方便.

而且urllib2模块支持调试模式,可以看到你的程序向服务器发送的请求已经服务器返回的信息,这样就可以很方便的看清楚自己程序是否有问题.
好了,不说废话了,下面贴出代码

from bs4 import BeautifulSoup

import urllib2

import urllib

import cookielib

 

 

urllib2.urlopen('http://www.baidu.com').read()

 

baseurl='https://selfsolve.apple.com/repairstatus/GetRepairDetails.do'

 

headers = {

    'Accept': 'text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8',

    'Host':'selfsolve.apple.com',

    'Origin':'https://selfsolve.apple.com',

    'Referer':'https://selfsolve.apple.com/repairstatus/main.do',

    'Accept-Language': 'zh-CN,zh;q=0.8,en-US;q=0.6,en;q=0.4',

    'Cache-Control':'max-age=0',

    'Connection':'keep-alive',

    'Content-Length':45,

    'Content-Type':'application/x-www-form-urlencoded',

    'User-Agent' : 'Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/34.0.1847.116 Safari/537.36',

}

 

 

postData={

  'repair_id':'aaaaaa',#维修序号

  'serial_number':'bbbbb'#手机序列号

}

 

 

if __name__=='__main__':

   

  cj = cookielib.LWPCookieJar()

  cookie_support = urllib2.HTTPCookieProcessor(cj)

  opener = urllib2.build_opener(

    cookie_support,

    urllib2.HTTPHandler(debuglevel=1),

    urllib2.HTTPSHandler(debuglevel=1)

  )

   

  urllib2.install_opener(opener)

   

   

   

   

  StrpostData=urllib.urlencode(postData)

  req=urllib2.Request(baseurl,StrpostData,headers)

  rsp=urllib2.urlopen(req)

  text=rsp.read()

   

  file=open('repair.html','w')

  file.write(text)

  file.close()

   

  print text

  raw_input()

好了,程序就是这样子,上面说的添加cookie支持和开启调试模式就是下面这段代码

cj = cookielib.LWPCookieJar()

cookie_support = urllib2.HTTPCookieProcessor(cj)

opener = urllib2.build_opener(

  cookie_support,

  urllib2.HTTPHandler(debuglevel=1),

  urllib2.HTTPSHandler(debuglevel=1)

)

 

urllib2.install_opener(opener)

然后可以很方便的看到程序运行时候的输出,如下图

python实现查询苹果手机维修进度

接下来就可以通过得到的html来抓取需要的信息了.

Python 相关文章推荐
wxPython事件驱动实例详解
Sep 28 Python
python通过imaplib模块读取gmail里邮件的方法
May 08 Python
在Python程序中操作文件之flush()方法的使用教程
May 24 Python
如何在Python函数执行前后增加额外的行为
Oct 20 Python
Python编程实现数学运算求一元二次方程的实根算法示例
Apr 02 Python
Python实现可获取网易页面所有文本信息的网易网络爬虫功能示例
Jan 15 Python
pyqt5 实现在别的窗口弹出进度条
Jun 18 Python
python之mock模块基本使用方法详解
Jun 27 Python
Pandas实现DataFrame按行求百分数(比例数)
Dec 27 Python
Python实现队列的方法示例小结【数组,链表】
Feb 22 Python
基于plt.title无法显示中文的快速解决
May 16 Python
Django Auth用户认证组件实现代码
Oct 13 Python
python让图片按照exif信息里的创建时间进行排序的方法
Mar 16 #Python
python实现简单的计时器功能函数
Mar 14 #Python
python将图片文件转换成base64编码的方法
Mar 14 #Python
python在Windows8下获取本机ip地址的方法
Mar 14 #Python
python检测远程端口是否打开的方法
Mar 14 #Python
python检测远程udp端口是否打开的方法
Mar 14 #Python
python检测远程服务器tcp端口的方法
Mar 14 #Python
You might like
PHP has encountered an Access Violation at 7C94BD02解决方法
2009/08/24 PHP
php无限极分类实现的两种解决方法
2013/04/28 PHP
PHP实现检测客户端是否使用代理服务器及其匿名级别
2015/01/07 PHP
简单谈谈favicon
2015/06/10 PHP
PHP编程中的Session阻塞问题与解决方法分析
2017/08/07 PHP
php中输出json对象的值(实现方法)
2018/03/07 PHP
异步javascript的原理和实现技巧介绍
2012/11/08 Javascript
鼠标滑在标题上显示图片的JS代码
2013/11/19 Javascript
jqgrid 表格数据导出实例
2013/11/21 Javascript
Javascript 按位与赋值运算符 (&=)使用介绍
2014/02/04 Javascript
什么是 AngularJS?AngularJS简介
2014/12/06 Javascript
NodeJS使用jQuery选择器操作DOM
2015/02/13 NodeJs
JS简单去除数组中重复项的方法
2016/09/13 Javascript
AngularJS框架中的双向数据绑定机制详解【减少需要重复的开发代码量】
2017/01/19 Javascript
jQuery 实现图片的依次加载图片功能
2017/07/06 jQuery
学习React中ref的两个demo示例
2018/08/14 Javascript
原生js实现公告滚动效果
2021/01/10 Javascript
jQuery模仿ToDoList实现简单的待办事项列表
2019/12/30 jQuery
将Vue组件库更换为按需加载的方法步骤
2020/05/06 Javascript
js实现手表表盘时钟与圆周运动
2020/09/18 Javascript
[03:05]DOTA2英雄基础教程 嗜血狂魔
2013/12/10 DOTA
[01:44]Ti10举办地公布
2019/08/25 DOTA
python pdb调试方法分享
2014/01/21 Python
对python中的xlsxwriter库简单分析
2018/05/04 Python
浅谈Python里面小数点精度的控制
2018/07/16 Python
flask框架中勾子函数的使用详解
2018/08/01 Python
Python数据类型之Tuple元组实例详解
2019/05/08 Python
Python帮你识破双11的套路
2019/11/11 Python
Pytorch实现各种2d卷积示例
2019/12/30 Python
pytorch之Resize()函数具体使用详解
2020/02/27 Python
css3+jq创作含苞待放的荷花
2014/02/20 HTML / CSS
日语专业毕业生求职信
2013/12/04 职场文书
纺织工程专业个人求职信范文
2014/01/27 职场文书
运动会入场词50字
2014/02/20 职场文书
文明寄语大全
2014/04/11 职场文书
幼儿园亲子活动总结
2014/04/26 职场文书