最近工作的一些杂记

来源:互联网 发布:手机c语言编辑器中文 编辑:程序博客网 时间:2024/05/20 22:40

xxxxx

http://www.cnblogs.com/sliverdang/archive/2011/09/05/2167760.html

从这篇文章这里学pyquery模块




python。用urllib下载文件。比如图片,用urlretrieve方法。urllib.urlretrieve('http://graph.facebook.com/502579353/picture?type=large','E:/22.jpg');其实标准的函数是(url[,filename[,reporthook[,data]]]),其中reporthook是一个下载进度函数,这里我们一般不用。

urllib2的urlopen会帮我们自动定向,即忽略了网页的重定向,弊端就是使我们不知道中间被绕了多少圈。httplib则不会,而且httplib也可以进行http连接以及https连接。还是上面那个例子。'http://graph.facebook.com/502579353/picture?type=large',facebook会把这个url重定向到另一个urlhttp://profile.ak.fbcdn.net/hprofile-ak-snc4/174379_502579353_1531511_n.jpg。如何使用httplib呢。请看

首先建立到网站的连接,conn=httplib.HTTPConnection('graph.facebook.com')

then,    conn.request("GET","/502579353/picture?type=large")

then,      res=conn.getresponse(),可以看到,res.__dict__={'fp':<socket._fileobject object at0x02002EF0>, 'status': 302, 'will_close': True,'chunk_left': 'UNKNOWN', 'length': 0, 'strict': 0, 'reason':'Found', 'version': 11, 'debuglevel': 0, 'msg':<httplib.HTTPMessage instance at0x02005710>, 'chunked': 0, '_method':'GET'}

这里res.status=302即,facebook做了重定向,我们要的信息在msg中,于是,m=res.msg

m.__dict__={'fp': None, 'status': '', 'startofbody': None,'startofheaders': None, 'subtype': 'jpeg', 'type': 'image/jpeg','maintype': 'image', 'headers': ['Access-Control-Allow-Origin:*\r\n', 'Cache-Control: private, no-cache, no-store,must-revalidate\r\n', 'Content-Type: image/jpeg\r\n', 'Expires:Sat, 01 Jan 2000 00:00:00 GMT\r\n', 'Location:http://profile.ak.fbcdn.net/hprofile-ak-snc4/174379_502579353_1531511_n.jpg\r\n','Pragma: no-cache\r\n', 'X-FB-Rev: 606826\r\n', 'X-FB-Debug:js4KNJFX1SkVqf7hxEmxEjQ8UrNQ04PZ2WM/DAaFapU=\r\n', 'Connection:close\r\n', 'Date: Thu, 09 Aug 2012 01:56:54 GMT\r\n','Content-Length: 0\r\n'], 'dict': {'content-length': '0','expires': 'Sat, 01 Jan 2000 00:00:00 GMT', 'x-fb-rev': '606826','connection': 'close', 'location': 'http://profile.ak.fbcdn.net/hprofile-ak-snc4/174379_502579353_1531511_n.jpg','pragma': 'no-cache', 'cache-control': 'private, no-cache,no-store, must-revalidate', 'date': 'Thu, 09 Aug 2012 01:56:54GMT', 'access-control-allow-origin': '*', 'content-type':'image/jpeg', 'x-fb-debug':'js4KNJFX1SkVqf7hxEmxEjQ8UrNQ04PZ2WM/DAaFapU='}, 'typeheader':'image/jpeg', 'encodingheader': None, 'seekable': 0, 'unixfrom':'', 'plisttext': '', 'plist': []}

重定向后的地址便是m['location'],http://profile.ak.fbcdn.net/hprofile-ak-snc4/174379_502579353_1531511_n.jpg'

可喜,当我惊喜的发现python如此简单的解决这个问题的时候,我TM网站用的是php啊,用php当然也可以调用python,可是效率或许不佳吧。算了,还是苦逼的看php如何解决吧

 

php的函数传递参数,有副本传递法,一般就是这个。另一种是引用传递,在参数前加上&即可,比如:

function test(&$a){  //$a=3;test($a);    echo$a;        4    return $a+1;}


涉及到linux

配置git的key。ssh-keygen -t rsa -C "gauss.zh@gmail.com"然后把保存的公钥粘贴到git的ssh key中。 cat ~/.ssh/id_rsa.pub
配置git提交时显示的名字 git config --global user.name "gausszh"
配置git用的邮箱账号 git config --global user.email gauss.zh@gmail.com

python

将字符串时间装换为datetime。

upload_time = datetime.datetime.strptime(“2014-1-21 09:56:11”, '%Y-%m-%d %H:%M:%S')




原创粉丝点击