Python urlopen()参数代码示例解析
1.data参数
data是可选的,需要使用bytes()方法将参数转化为字节编码格式的内容。如果传递了这个参数,请求方式就不是GET方式,而是POST方式。
import urllib.parse import urllib.request data = bytes(urllib.parse.urlencode({'word':'hello'}),encoding='utf8')#使用bytes()方法将参数word(值是hello),转换为字节流(bytes),#该方法的第一个参数需要str类型,需要用urllib.parse模块里的urlencode()方法将参数字典转化为字符串。response = urllib.request.urlopen('http://httpbin.org/post',data = data) print(response.read())
2.timeout参数
用于设置超时时间,单位为秒,如果超出了设置的这个时间,还没有得到响应,就会抛出异常。可以通过设置这个超时时间来控制一个页面长时间未响应时,就跳过它的抓取。
import socket import urllib.request import urllib.error try: response = urllib.request.urlopen('http://httpbin.org/get',timeout=0.1)#设置超时时间为0.1s except urllib.error.URLError as e: if isinstance(e.reason,socket.timeout): print('TIME OUT')#如果超时,输出TIME OUT
3.其他参数
context参数,类型必须是ssl.SSLContext类型。
cafile和capath这两个参数分别指定CA证书和它的路径,在请求HTTPS链接时候有用。
cadefault参数已经弃用了,其默认值为False。
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持我们。
相关推荐
-
Python urlopen 使用小示例
一.打开一个网页获取所有的内容 from urllib import urlopendoc = urlopen("http://www.baidu.com").read()print doc 二.获取Http头 from urllib import urlopendoc = urlopen("http://www.baidu.com")print doc.info()print doc.info().getheader('Content-Type') 三.使用代理
-
Python urlopen()函数 示例分享
好了,废话少说,我们先看看几个示例吧 一.打开一个网页获取所有的内容 复制代码 代码如下: from urllib import urlopendoc = urlopen("http://www.baidu.com").read()print doc 二.获取Http头 复制代码 代码如下: from urllib import urlopendoc = urlopen("http://www.baidu.com")print doc.info()print doc
-
Python urllib模块urlopen()与urlretrieve()详解
1.urlopen()方法urllib.urlopen(url[, data[, proxies]]) :创建一个表示远程url的类文件对象,然后像本地文件一样操作这个类文件对象来获取远程数据.参数url表示远程数据的路径,一般是网址:参数data表示以post方式提交到url的数据(玩过web的人应该知道提交数据的两种方式:post与get.如果你不清楚,也不必太在意,一般情况下很少用到这个参数):参数proxies用于设置代理.urlopen返回 一个类文件对象,它提供了如下方法:read(
-
python urllib urlopen()对象方法/代理的补充说明
python urllib urlopen()对象方法/代理的补充说明 urllib 是 python 自带的一个抓取网页信息一个接口,他最主要的方法是 urlopen(),是基于 python 的 open() 方法的.下面是主要说明: urllib.urlopen('网址') 这里传入urlopen()的参数有特别说要求,要遵循一些网络协议,比如http,ftp,也就是说,在网址的开头必须要有http://这样的说明,如:urllib.urlopen('http://www.baidu.co
-
Python使用urllib模块的urlopen超时问题解决方法
在新的公司开始上班,今天工作的主题内容是市场部门需要抓取一些论坛用户的邮箱,以便发送营销邮件. 于是用了一个python脚本来执行,前面抓了几个都没有什么问题,后来碰到一个论坛,在执行urlopen的地方总是提示超时,百度了一下,因为我使用的是urllib不是urllib2,所以无法直接在urlopen里面加timeout参数,只能是设置全局脚本的超时时间 首先: 复制代码 代码如下: import socket 然后: 复制代码 代码如下: socket.setdefaulttimeout(6
-
解决python3 urllib中urlopen报错的问题
前言 最近更新了Python版本,准备写个爬虫,意外的发现urllib库中属性不存在urlopen,于是各种google,然后总结一下给出解决方案 问题的出现 AttributeError: 'module' object has no attribute 'urlopen' 问题的解决途径 我们先来看下官方文档的解释: a new urllib package was created. It consists of code from urllib, urllib2, urlparse, an
-
详解Python3网络爬虫(二):利用urllib.urlopen向有道翻译发送数据获得翻译结果
上一篇内容,已经学会了使用简单的语句对网页进行抓取.接下来,详细看下urlopen的两个重要参数url和data,学习如何发送数据data 一.urlopen的url参数 Agent url不仅可以是一个字符串,例如:http://www.baidu.com.url也可以是一个Request对象,这就需要我们先定义一个Request对象,然后将这个Request对象作为urlopen的参数使用,方法如下: # -*- coding: UTF-8 -*- from urllib import re
-
Python urlopen()和urlretrieve()用法解析
这篇文章主要介绍了Python urlopen()和urlretrieve()用法解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 1.urlopen()方法 urllib.urlopen(url[, data[, proxies]]) :创建一个表示远程url的类文件对象,然后像本地文件一样操作这个类文件对象来获取远程数据. 参数url表示远程数据的路径,一般是网址: 参数data表示以post方式提交到url的数据(玩过web的人应该知道
-
Python urlopen()参数代码示例解析
1.data参数 data是可选的,需要使用bytes()方法将参数转化为字节编码格式的内容.如果传递了这个参数,请求方式就不是GET方式,而是POST方式. import urllib.parse import urllib.request data = bytes(urllib.parse.urlencode({'word':'hello'}),encoding='utf8')#使用bytes()方法将参数word(值是hello),转换为字节流(bytes),#该方法的第一个参数需要str
-
Python Selenium参数配置方法解析
这篇文章主要介绍了Python Selenium参数配置方法解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 selenium.获取浏览器大小.设置浏览器位置.最大化浏览器 get_window_size() 获取浏览器大小 # 将窗口大小实例化 size_Dict = driver.get_window_size() # 打印浏览器的宽和高 print("当前浏览器的宽:", size_Dict['width']) print(&
-
python默认参数调用方法解析
这篇文章主要介绍了python默认参数调用方法解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 最常见的一种形式是的是为一个或者多个参数指定默认值,这会创建一个可以使用比定义时允许的参数更少的参数调用的函数, def ask_ok(prompt, retries=4, reminder='Please try again!'): while True: ok = input(prompt) if ok in ('y', 'ye', 'yes'
-
python机器学习实现神经网络示例解析
目录 单神经元引论 参考 多神经元 单神经元引论 对于如花,大美,小明三个因素是如何影响小强这个因素的. 这里用到的是多元的线性回归,比较基础 from numpy import array,exp,dot,random 其中dot是点乘 导入关系矩阵: X= array ( [ [0,0,1],[1,1,1],[1,0,1],[0,1,1]]) y = array( [ [0,1,1,0]]).T ## T means "transposition" 为了满足0到1的可能性,我们采用
-
Python随机数函数代码实例解析
这篇文章主要介绍了Python随机数函数代码实例解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 ''' choice(seq) 从序列的元素中随机选出一个元素 randrange ([start,] stop [,step]) 从指定范围内,在指定步长递增的集合中 获取一个随机数,步长默认为 1 .注:不包含 stop 值 random() 随机生成下一个实数,它在[0,1)范围内. shuffle(lst) 将序列的所有元素随机排序,返回
-
Python__双划线参数代码实例解析
这篇文章主要介绍了python__双划线参数代码实例解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 代码如下 ''' >>> Class1.__doc__ # 类型帮助信息 'Class1 Doc.' >>> Class1.__name__ # 类型名称 'Class1' >>> Class1.__module__ # 类型所在模块 '__main__' >>> Class1._
-
python编程线性回归代码示例
用python进行线性回归分析非常方便,有现成的库可以使用比如:numpy.linalog.lstsq例子.scipy.stats.linregress例子.pandas.ols例子等. 不过本文使用sklearn库的linear_model.LinearRegression,支持任意维度,非常好用. 一.二维直线的例子 预备知识:线性方程y=a∗x+b.y=a∗x+b表示平面一直线 下面的例子中,我们根据房屋面积.房屋价格的历史数据,建立线性回归模型. 然后,根据给出的房屋面积,来预测房屋价格
-
用Python画圣诞树代码示例
拿去给自己所思所念之人 from turtle import * import time setup(500, 500, startx=None, starty=None) speed(0) pencolor("pink") pensize(10) penup() hideturtle() goto(0, 150) showturtle() pendown() shape(name="classic") # 1 seth(-120) for i in range(1
-
Python tcp传输代码实例解析
socket是编程语言对tcp/ip协议的封装,使用其可以在两个主机之间传输文件,下面直接进入主题,下面示例是最简单的tcp传输代码示例,先启动server再启动client.需要注意python3socket只能传输byte类型,具体如何转换可以复习字符编码章节相关知识 sever端代码 # -*- coding:utf-8 -*- import socket server = socket.socket() server.bind(("0.0.0.0", 8888)) server
随机推荐
- 解析MySQL的information_schema数据库
- jquery+javascript编写国籍控件
- AngularJS 中使用Swiper制作滚动图不能滑动的解决方法
- 详解如何调用zabbix API获取主机
- 基拉freedom写的一些批处理
- JAVA通过HttpClient发送HTTP请求的方法示例
- pygame学习笔记(1):矩形、圆型画图实例
- 用JavaScript对JSON进行模式匹配(Part 1-设计)
- PHP判断是否有Get参数的方法
- ThinkPHP实现事务回滚示例代码
- php 404错误页面实现代码
- 窥探mysql存储过程细节
- php 类中的常量、静态属性、非静态属性的区别
- curl实现站外采集的方法和技巧
- php引用返回与取消引用的详解
- js实现用滚动条来放大缩小图片的代码
- 读JavaScript DOM编程艺术笔记
- JavaScript 中的日期和时间及表示标准介绍
- Windows下tomcat安装图文教程(安装版)
- 详解SpringMVC 自动封装枚举类的方法