900字范文,内容丰富有趣,生活中的好帮手!
900字范文 > Python urllib urllib2 httplib抓取网页代码实例

Python urllib urllib2 httplib抓取网页代码实例

时间:2019-08-13 18:10:07

相关推荐

Python urllib urllib2 httplib抓取网页代码实例

后端开发|Python教程

Python,urllib,urllib2,httplib,

后端开发-Python教程

使用urllib2,太强大了

试了下用代理登陆拉取cookie,跳转抓图片……

文档:/library/urllib2.html

idc源码己接口版,ubuntu密码为空,tomcat8 指定ip,黑色刺爬虫,php补码教程视频学习,石首seolzw

直接上demo代码了

包括:直接拉取,使用Reuqest(post/get),使用代理,cookie,跳转处理

java指纹解锁源码,ubuntu系统命令界面,运行解压版的tomcat,nodejs爬虫代理,温州网站建设方案php,seo时效lzw

#!/usr/bin/python# -*- coding:utf-8 -*-# urllib2_test.py# author: wklken# -03-17 wklken@import urllib,urllib2,cookielib,socketurl = "http://www.testurl....." #change yourself#最简单方式def use_urllib2(): try: f = urllib2.urlopen(url, timeout=5).read() except urllib2.URLError, e: print e.reason print len(f)#使用Requestdef get_request(): #可以设置超时 socket.setdefaulttimeout(5) #可以加入参数 [无参数,使用get,以下这种方式,使用post] params = {"wd":"a","b":"2"} #可以加入请求头信息,以便识别 i_headers = {"User-Agent": "Mozilla/5.0 (Windows; U; Windows NT 5.1; zh-CN; rv:1.9.1) Gecko/0624 Firefox/3.5", "Accept": "text/plain"} #use post,have some params post to server,if not support ,will throw exception #req = urllib2.Request(url, data=urllib.urlencode(params), headers=i_headers) req = urllib2.Request(url, headers=i_headers) #创建request后,还可以进行其他添加,若是key重复,后者生效 #request.add_header(Accept,application/json) #可以指定提交方式 #request.get_method = lambda: PUT try: page = urllib2.urlopen(req) print len(page.read()) #like get #url_params = urllib.urlencode({"a":"1", "b":"2"}) #final_url = url + "?" + url_params #print final_url #data = urllib2.urlopen(final_url).read() #print "Method:get ", len(data) except urllib2.HTTPError, e: print "Error Code:", e.code except urllib2.URLError, e: print "Error Reason:", e.reasondef use_proxy(): enable_proxy = False proxy_handler = urllib2.ProxyHandler({"http":":8080"}) null_proxy_handler = urllib2.ProxyHandler({}) if enable_proxy: opener = urllib2.build_opener(proxy_handler, urllib2.HTTPHandler) else: opener = urllib2.build_opener(null_proxy_handler, urllib2.HTTPHandler) #此句设置urllib2的全局opener urllib2.install_opener(opener) content = urllib2.urlopen(url).read() print "proxy len:",len(content)class NoExceptionCookieProcesser(urllib2.HTTPCookieProcessor): def http_error_403(self, req, fp, code, msg, hdrs): return fp def http_error_400(self, req, fp, code, msg, hdrs): return fp def http_error_500(self, req, fp, code, msg, hdrs): return fpdef hand_cookie(): cookie = cookielib.CookieJar() #cookie_handler = urllib2.HTTPCookieProcessor(cookie) #after add error exception handler cookie_handler = NoExceptionCookieProcesser(cookie) opener = urllib2.build_opener(cookie_handler, urllib2.HTTPHandler) url_login = "https://www.yourwebsite/?login" params = {"username":"user","password":"111111"} opener.open(url_login, urllib.urlencode(params)) for item in cookie: print item.name,item.value #urllib2.install_opener(opener) #content = urllib2.urlopen(url).read() #print len(content)#得到重定向 N 次以后最后页面URLdef get_request_direct(): import httplib httplib.HTTPConnection.debuglevel = 1 request = urllib2.Request("") request.add_header("Accept", "text/html,*/*") request.add_header("Connection", "Keep-Alive") opener = urllib2.build_opener() f = opener.open(request) print f.url print f.headers.dict print len(f.read())if __name__ == "__main__": use_urllib2() get_request() get_request_direct() use_proxy() hand_cookie()

unix v5源码,ubuntu如何下载软件,爬虫的抓取周期,sumline php,传统SEO内容lzw

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。