zoukankan      html  css  js  c++  java
  • Python爬虫学习——获取网页

    通过GET请求获取返回的网页,其中加入了User-agent信息,不然会抛出"HTTP Error 403: Forbidden"异常

    因为有些网站为了防止这种没有User-agent信息的访问,会验证请求信息中的UserAgent(它的信息包括硬件平台、系统软件应用软件和用户个人偏好),如果UserAgent存在异常或者是不存在,那么这次请求将会被拒绝。

    #coding=utf-8
    import urllib2
    import re
    
    #使用Python2.7
    def getHtml(url,user_agent="wswp",num_retries=2):		#下载网页,如果下载失败重新下载两次
    	print '开始下载网页:',url
    	headers = {"User-agent":user_agent}
    #	headers = {
    #   'User-Agent': 'Mozilla/5.0 (Windows NT 6.1; rv:24.0) Gecko/20100101 Firefox/24.0',
    #   'cookie': cookie
    #	}
    	request = urllib2.Request(url,headers=headers)
    	try:
    	    html = urllib2.urlopen(request).read()			#GET请求
    	except urllib2.URLError as e:
    		print "下载失败:",e.reason
    		html = None
    		if num_retries > 0:
    			if hasattr(e,'code') and 500 <= e.code < 600:
    				return getHtml(url,num_retries-1)
    	return html
    
    if __name__ == '__main__':
    	html = getHtml("http://www.baidu.com")
    	print html
    	print "结束"
    

     

    ... 

  • 相关阅读:
    TP5.1 遇见问题整理
    PDO 基础
    php7 连接 mysql 的两种方式
    [php] 添加接口访问日志(文件)
    curl 向远程服务器传输file文件
    VBoxManage
    linux 系统下安装多个php版本
    vim中文乱码问题
    vim 翻页命令
    php list()函数
  • 原文地址:https://www.cnblogs.com/tonglin0325/p/6278991.html
Copyright © 2011-2022 走看看