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 相关文章推荐
python标准算法实现数组全排列的方法
Mar 17 Python
使用Python脚本将绝对url替换为相对url的教程
Apr 24 Python
用Python实现服务器中只重载被修改的进程的方法
Apr 30 Python
使用Python的urllib2模块处理url和图片的技巧两则
Feb 18 Python
如何在Django配置文件里配置session链接
Aug 06 Python
python 实现绘制整齐的表格
Nov 18 Python
python3实现用turtle模块画一棵随机樱花树
Nov 21 Python
Ubuntu中配置TensorFlow使用环境的方法
Apr 21 Python
使用PyCharm官方中文语言包汉化PyCharm
Nov 18 Python
python网络爬虫实现发送短信验证码的方法
Feb 25 Python
PyCharm配置KBEngine快速处理代码提示冲突、配置命令问题
Apr 03 Python
Python创建SQL数据库流程逐步讲解
Sep 23 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
了解Joomla 这款来自国外的php网站管理系统
2010/03/11 PHP
PHP排序之二维数组的按照字母排序实现代码
2011/08/13 PHP
PHP中date与gmdate的区别及默认时区设置
2014/05/12 PHP
PHP实现生成唯一会员卡号
2015/08/24 PHP
php进程间通讯实例分析
2016/07/11 PHP
DWZ+ThinkPHP开发时遇到的问题分析
2016/12/12 PHP
PHP开启目录引索+fancyindex漂亮目录浏览带搜索功能
2019/09/23 PHP
Extjs TriggerField在弹出窗口显示不出问题的解决方法
2010/01/08 Javascript
jQuery插件原来如此简单 jQuery插件的机制及实战
2012/02/07 Javascript
基于JavaScript实现高德地图和百度地图提取行政区边界经纬度坐标
2016/01/22 Javascript
AngularJS 过滤器(自带和自建)详解
2016/09/19 Javascript
Bootstrap基本组件学习笔记之列表组(11)
2016/12/07 Javascript
JS实现读取xml内容并输出到div中的方法示例
2018/04/19 Javascript
详解Vue 多级组件透传新方法provide/inject
2018/05/09 Javascript
node.js自动上传ftp的脚本分享
2018/06/16 Javascript
微信小程序云开发如何使用云函数生成二维码
2019/05/18 Javascript
微信小程序iOS下拉白屏晃动问题解决方案
2019/10/12 Javascript
小程序Scroll-view上拉滚动刷新数据
2020/06/21 Javascript
python中list循环语句用法实例
2014/11/10 Python
Python中map,reduce,filter和sorted函数的使用方法
2015/08/17 Python
深入源码解析Python中的对象与类型
2015/12/11 Python
详解Python的Flask框架中的signals信号机制
2016/06/13 Python
python+matplotlib实现鼠标移动三角形高亮及索引显示
2018/01/15 Python
将string类型的数据类型转换为spark rdd时报错的解决方法
2019/02/18 Python
python PyQt5/Pyside2 按钮右击菜单实例代码
2019/08/17 Python
python求平均数、方差、中位数的例子
2019/08/22 Python
HTML5页面音视频在微信和app下自动播放的实现方法
2016/10/20 HTML / CSS
英国最受欢迎的母婴精品品牌:JoJo Maman BéBé
2021/02/17 全球购物
怎样比较两个类型为String的字符串
2016/08/17 面试题
职专应届生求职信
2013/11/16 职场文书
学习自我鉴定
2014/02/01 职场文书
小学语文教学经验交流材料
2014/06/02 职场文书
丧事答谢词
2015/01/05 职场文书
生产设备维护保养制度
2015/08/06 职场文书
Linux中Nginx的防盗链和优化的实现代码
2021/06/20 Servers
Java 多线程协作作业之信号同步
2022/05/11 Java/Android