Monitoring URL Python script

Source: Internet
Author: User
Tags curl python script

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_PATHAlarm
#!/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

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.