导航:首页 > 编程语言 > 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相关的资料

热点内容
车用空调压缩机品牌 浏览:830
在回收站中可以恢复几个文件夹 浏览:916
phpget转义 浏览:322
我的世界宝可梦服务器叫什么名字 浏览:748
新闻编译难吗 浏览:582
ia架构服务器是什么意思 浏览:220
linux查看局域网 浏览:77
金蝶启动命令 浏览:480
安卓如何执行shell命令 浏览:947
linux路由控制 浏览:434
碧蓝航线压缩包解压密码 浏览:439
抗性提升命令方块指令 浏览:769
程序员那么可爱第30集免费看 浏览:637
如何下载老友麻将app 浏览:445
java路径参数 浏览:592
php命名空间使用 浏览:298
app的竞争力如何写 浏览:587
linux删除swp 浏览:590
pdfxchange40 浏览:77
车牌号码是哪个app 浏览:50