导航:首页 > 编程语言 > python怎么设置urlopen

python怎么设置urlopen

发布时间:2024-05-01 23:40:06

python程序问题:urlopen()控制

使用try...except来对urlopen出错进行控制,通过socket模块的setdefaulttimeout函数来控制超时时间,python3.x示例代码如下:

importurllib.request
importsocket

socket.setdefaulttimeout(10)#设置超时时间
#要下载的网页列表
urls=['http://www.test.com/1.htm',
'http://www.test.com/2.htm',
'http://www.test.com/3.htm',
'http://www.test.com/4.htm',
'http://www.test.com/5.htm',
'http://www.test.com/6.htm']
forurlinurls:
try:
html=urllib.request.urlopen(url)
#处理得到的网页
except:
#出错处理

⑵ 如何用python把网页上的文本内容保存下来

1、了解Python如何获取网页内容。

⑶ python 2.7 urlopen 函数,如何提高下载速度.

可以使用多进程或多线程并发下载。其实你的方法已经是多进程的一种了。


python中有多进程模块multiprocessing和多线程multithreading。


思路是这样,将需要下载的连接送入队列,然后各个进程(或线程)从队列里拿任务然后下载。前面的两个类库都提供进程、线程安全的队列。


楼下给了个多线程的示例,这里我给一个稍微复杂点的进程的示例。其实线程和进程库的接口基本是一致的。

#!/usr/bin/envpython
#encoding=utf-8
#test.py

,Process
fromQueueimportEmpty
importurllib
importtime

urls=[line.strip()forlineinopen('urls.txt')]
queue=Queue(1024)

forurlinurls:
queue.put(url)

defdownload():
whileTrue:
try:
url=queue.get()
f=urllib.urlopen(url)
r=f.read()
#这里保存你下载的文件
exceptEmpty:
time.sleep(5)
exceptException,e:
print'downloaderror:%s'%e

foriinrange(10):
p=Process(target=download)
p.start()
p.join()


使用方法:编辑一个文件urls.txt,每行一个url。然后:

nohup./test.py&


结束进程则需要找到它的进程号,然后kill -9


望采纳,谢谢支持!

⑷ python3中使用urllib进行https请求

刚入门python学习网络爬虫基础,我使用的python版本是python3.6.4,学习的教程参考 Python爬虫入门教程

python3.6的版本已经没有urllib2这个库了,所以我也不需要纠空带结urllib和urllib2的区别和应用场景

参考这篇官方文档 HOWTO Fetch Internet Resources Using The urllib Package 。关于http(s)请求一般就get和post两种方式较为常用衡并,所以写了以下两个小demo,url链接随便找的,具体场景具体变化,可参考注释中的基本思路

POST请求:

GET请求:

注意,
使用ssl创建未经验证的上下文,在urlopen中需传入上下文参数
urllib.request.urlopen(full_url, context=context)
这是Python 升级到 2.7.9 之后引入的一个新特性,所以在使用urlopen打开https链接会遇到如下报错:
ssl.SSLError: [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed (_ssl.c:777)
所以,当使用urllib.urlopen打开一个 https 链接时,需要先验证一次 SSL 证书
context = ssl._create_unverified_context()
或者或者导入ssl时关闭斗拦芦证书验证
ssl._create_default_https_context =ssl._create_unverified_context

⑸ 如何用python的urlopen打开自动跳转的网页

try this:

import sys,re,urllib2,cookielib
def download(url):
____opener = urllib2.build_opener(urllib2.HTTPCookieProcessor(cookielib.CookieJar()))
____opener.addheaders = [('User-agent', 'Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1; .NET CLR 1.1.4322)')]
____f = opener.open(url)
____s = f.read()
____f.close()
____return s
s = download("http://web.nvd.nist.gov/view/vuln/detail?vulnId=CVE-2009-2403")
print s

⑹ 关于python的urlopen

python 3里面,bytes存放的是binary data,而str存放的text

从bytes转到str,需要把binary data解码,因此你需要指定一个编码,例如:
my_str = str(my_bytes, encoding="utf-8")

建议阅读文档:
http://docs.python.org/release/3.0.1/whatsnew/3.0.html#text-vs-data-instead-of-unicode-vs-8-bit
http://docs.python.org/release/3.0.1/howto/unicode.html#unicode-howto

这两段文档应该足够解决你的困惑,呵呵

⑺ 关于python urlopen函数

python
3里面,bytes存放的是binary
data,而str存放的text
从bytes转到str,需要把binary
data解码,因此你需要指定一个编码,例如:
my_str
=
str(my_bytes,
encoding="utf-8")
建议阅读文档:
http://docs.python.org/release/3.0.1/whatsnew/3.0.html#text-vs-data-instead-of-unicode-vs-8-bit
http://docs.python.org/release/3.0.1/howto/unicode.html#unicode-howto
这两段文档应该足够解决你的困惑,呵呵

阅读全文

与python怎么设置urlopen相关的资料

热点内容
dji编程玩具 浏览:17
dcs服务器异常现象是什么 浏览:197
java中的布局 浏览:698
单片机作业三 浏览:156
古代分数运算法则 浏览:149
电脑大文件夹查找方法 浏览:934
什么app可以买国外衣服 浏览:381
妈妈吃了命令药丸 浏览:712
男的进国企做程序员 浏览:992
程序员的数学线性代数 浏览:371
冰箱压缩机启动器盒怎么拆 浏览:441
雪崩pdf 浏览:950
桂林银行app如何查询积分和等级 浏览:283
app第三方接入都有什么 浏览:585
win7命令快捷键 浏览:541
安卓手机上的主键按不了了怎么办 浏览:938
前端小程序加密 浏览:889
python写xls 浏览:310
压缩干粮图片 浏览:838
怎么看网站被加密的视频 浏览:850