视频1 视频21 视频41 视频61 视频文章1 视频文章21 视频文章41 视频文章61 推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37 推荐39 推荐41 推荐43 推荐45 推荐47 推荐49 关键词1 关键词101 关键词201 关键词301 关键词401 关键词501 关键词601 关键词701 关键词801 关键词901 关键词1001 关键词1101 关键词1201 关键词1301 关键词1401 关键词1501 关键词1601 关键词1701 关键词1801 关键词1901 视频扩展1 视频扩展6 视频扩展11 视频扩展16 文章1 文章201 文章401 文章601 文章801 文章1001 资讯1 资讯501 资讯1001 资讯1501 标签1 标签501 标签1001 关键词1 关键词501 关键词1001 关键词1501 专题2001
python实现查询苹果手机维修进度
2020-11-27 14:31:53 责编:小采
文档
万恶的苹果,我的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; WOW) 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)

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

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

下载本文
显示全文
专题