Python code:
#!/usr/bin/python#coding:utf-8import stringioimport pycurlimport sysimport osclass urlpass:def __init__ (self): self.contents = "Def body_callback (self,buf): self.contents = self.contents + bufdef urlgzip (input_url): t = Urlpass () c = Pycurl. Curl () c.setopt (Pycurl. Writefunction,t.body_callback) c.setopt (Pycurl. ENCODING, ' gzip ') c.setopt (Pycurl. Url,input_url) c.perform () Http_code = C.getinfo (pycurl. Http_code) #响应代码 http_conn_time = C.getinfo (pycurl. Connect_time) #远程服务器连接时间 Http_pre_tran = C.getinfo (pycurl. Pretransfer_time) #连接上后开始传输的时间 Http_start_tran = C.getinfo (pycurl. Starttransfer_time) #接收第一个字节的时间 http_total_time = C.getinfo (pycurl. Total_time) #上一请求总时间 http_size = C.getinfo (pycurl. size_download) #下载数据大小 #print ' http_code http_size conn_time pre_tran start_tran total_time ' return ' Http_code:%d,htt P_size:%d,conn_time:%f,pre_tran:%f,start_tran:%f,total_time:%f "% (http_code,http_size,http_conn_time,http_pre_ Tran,http_start_tran,hTtp_total_time) If __name__ = = ' __main__ ': #input_url = sys.argv[1] input_url= ' http://www.testurl.com ' Urlinfo=url Gzip (input_url) print type (urlinfo) print Urlinfo
pycurl.NAMELOOKUP_TIME 域名解析时间
pycurl.CONNECT_TIME 远程服务器连接时间
pycurl.PRETRANSFER_TIME 连接上后到开始传输时的时间
pycurl.STARTTRANSFER_TIME 接收到第一个字节的时间
pycurl.TOTAL_TIME 上一请求总的时间
pycurl.REDIRECT_TIME 如果存在转向的话,花费的时间
pycurl.EFFECTIVE_URL
pycurl.HTTP_CODE HTTP 响应代码
pycurl.REDIRECT_COUNT 重定向的次数
pycurl.SIZE_UPLOAD 上传的数据大小
pycurl.SIZE_DOWNLOAD 下载的数据大小
pycurl.SPEED_UPLOAD 上传速度
pycurl.HEADER_SIZE 头部大小
pycurl.REQUEST_SIZE 请求大小
pycurl.CONTENT_LENGTH_DOWNLOAD 下载内容长度
pycurl.CONTENT_LENGTH_UPLOAD 上传内容长度
pycurl.CONTENT_TYPE 内容的类型
pycurl.RESPONSE_CODE 响应代码
pycurl.SPEED_DOWNLOAD 下载速度
pycurl.SSL_VERIFYRESULT
pycurl.INFO_FILETIME 文件的时间信息
pycurl.HTTP_CONNECTCODE HTTP 连接代码
pycurl.HTTPAUTH_AVAIL
pycurl.PROXYAUTH_AVAIL
pycurl.OS_ERRNO
pycurl.NUM_CONNECTS
pycurl.SSL_ENGINES
pycurl.INFO_COOKIELIST
pycurl.LASTSOCKET
pycurl.FTP_ENTRY_PATH
Alarm
#!/usr/bin/python#coding:utf-8import stringioimport pycurlimport sysimport osimport requestsimport jsonclass urlpass: def __init__ (self): self.contents = "def body_callback (self,buf): self.contents = self.contents + bufde F Urlgzip (input_url): t = urlpass () c = Pycurl. Curl () c.setopt (Pycurl. Writefunction,t.body_callback) c.setopt (Pycurl. ENCODING, ' gzip ') c.setopt (Pycurl. Url,input_url) c.perform () Http_code = C.getinfo (pycurl. Http_code) #响应代码 http_conn_time = C.getinfo (pycurl. Connect_time) #远程服务器连接时间 Http_pre_tran = C.getinfo (pycurl. Pretransfer_time) #连接上后开始传输的时间 Http_start_tran = C.getinfo (pycurl. Starttransfer_time) #接收第一个字节的时间 http_total_time = C.getinfo (pycurl. Total_time) #上一请求总时间 http_size = C.getinfo (pycurl. size_download) #下载数据大小 #print ' http_code http_size conn_time pre_tran start_tran total_time ' return ' status code:%d, page Download size KB: %d, connection time seconds:%f, start transfer time:%f, Total time:%f "% (http_code,http_size,http_conn_time,http_start_tran,http_total_time) def geT_token (): url= ' https://qyapi.weixin.qq.com/cgi-bin/gettoken ' values = {' Corpid ': ' Weixin corpid ', ' corpsecret ': ' Weixin token ',} #asia monitor req = requests.post (URL, params=values) data = Json.loads (req.text) return data["AC Cess_token "]def send_msg (info01): Url=" https://qyapi.weixin.qq.com/cgi-bin/message/send?access_token= "+get_token () values = "" "{" Touser ":" 1 "," Toparty ":" 1 "," Msgtype ":" Text "," Agentid ":" 1 "," text ": {" con Tent ":" Singapore api:{%s} "}," safe ":" 0 "}" ""% (info01) data = Json.loads (values) req = requests.post (URL, valu ES) If __name__ = = ' __main__ ': #input_url = sys.argv[1] input_url= ' http://www.test.com ' Urlinfo=urlgzip (input_url) Send_msg (urlinfo) print type (urlinfo) print Urlinfo
Monitoring URL Python script