[转]python3.x 的urllib使用例子

2.x版本的python可以直接使用import urllib来进行操作,但是3.x版本的python使用的是import urllib.request来进行操作,下面是简单的例子:

===============================================================================

# get code of given URL as html text string
# Python3 uses urllib.request.urlopen()
# instead of Python2‘s urllib.urlopen() or urllib2.urlopen()

import urllib.request

fp = urllib.request.urlopen("http://www.python.org")

mybytes = fp.read()
# note that Python3 does not read the html code as string
# but as html code bytearray, convert to string with
mystr = mybytes.decode("utf8")

fp.close()

print(mystr)

================================================================================

# get the code of a given URL as html text string
# Python3 uses urllib.request.urlopen()
# get the encoding used first
# tested with Python 3.1 with the Editra IDE

import urllib.request

def extract(text, sub1, sub2):
    """
    extract a substring from text between first
    occurances of substrings sub1 and sub2
    """
    return text.split(sub1, 1)[-1].split(sub2, 1)[0]

fp = urllib.request.urlopen("http://www.python.org")

mybytes = fp.read()

encoding = extract(str(mybytes).lower(), ‘charset=‘, ‘"‘)
print(‘-‘*50)
print( "Encoding type = %s" % encoding )
print(‘-‘*50)

if encoding:
    # note that Python3 does not read the html code as string
    # but as html code bytearray, convert to string with
    mystr = mybytes.decode(encoding)
    print(mystr)
else:
    print("Encoding type not found!")

fp.close()

==================================================================================

参考:http://www.daniweb.com/forums/thread213221.html

时间: 2024-11-08 03:45:06

[转]python3.x 的urllib使用例子的相关文章

python3 AttributeError: module 'urllib' has no attribute 'urlencode'

错误代码: data = urllib.urlencode(data) 错误原因:python2和python3的urllib结构是有所不同的,所以不能这样用 解决方案: data = urllib.parse.urlencode(data) python3 AttributeError: module 'urllib' has no attribute 'urlencode' 原文地址:https://www.cnblogs.com/pengfy/p/11269656.html

在python3中使用urllib.request编写简单的网络爬虫

Python官方提供了用于编写网络爬虫的包 urllib.request, 我们主要用它进行打开url,读取url里面的内容,下载里面的图片. 分以下几步: step1:用urllib.request.urlopen打开目标网站 step2:由于urllib.request.urlopen返回的是一个http.client.HTTPResponse object,无法直接读取里面的内容,所以直接调用该对象的方法read(),获取到页面代码,存到html里 step3:构建正则表达式,从页面代码里

Python3.X与urllib

在Python3.X中使用urllib时,不能像Python2.X一样直接使用: import urllib response = urllib.urlopen("http://www.baidu.com") Python3.X需要使用如下方式: import urllib.request response = urllib.request.urlopen("http://www.baidu.com") 同理,在Python3.X中,与urllib相关的其余组件:e

python3.5中urllib模块抓取指定URL内容

python3.5中把python中的urllib和urllib2模块合并为urllib模块啦.urllib模块下有五个类: 抓取指定URL下内容封装成一个类文件对象,其中的很多方法操作和文件操作是一样的.

python3 爬虫(urllib+beautifulsoup)beautifulsoup自动检测编码错误

版本:Python3.x 运行系统:win7 编辑器:pycharm 爬取页面:携程的一个页面(韩国首尔6日5晚半自助游·直飞+滑雪场或南怡岛+乐天世界+1天自由活动-[携程旅游]) #!/usr/bin/env python3 # -*- coding: utf-8 -*- from urllib.request import urlopen from urllib.error import HTTPError from bs4 import BeautifulSoup def getComm

python3爬虫之Urllib库(二)

在上一篇文章中,我们大概讲了一下urllib库中最重要的两个请求方法:urlopen()  和  Request() 但是仅仅凭借那两个方法无法执行一些更高级的请求,如Cookies处理,代理设置等等. 这是就是Handler大显神威的时候了,简单地说,他是各种处理器,有处理验证登录的,有处理Cookies的,有处理代理设置的. 高级用法 首先说一下urllib.request模块中的BaseHandler类,他是所有类的基类,它提供了最基本的方法,如:default_open()   prot

第一个用python3写的爬虫小例子

#!usr/bin/python import urllib.request response = urllib.request.urlopen("http://www.baidu.com"); print (response.read());

[Python3]HTTP处理 - urllib模块

概述 urllib是python最基础.最核心的HTTP协议支持库,诸多第三方库都依赖urllib,所以urllib是必须掌握的HTTP库. 掌握了urllib有利于: 深入理解http协议 可以更好的学习和掌握第三方http库 快速的开展基于http的接口测试 快速进入爬虫学习之路 urllib组成 我们一起看下urllib由哪些模块或类构成: urllib.request用于构建http请求 urllib.response用于处理http响应值的类 urllib.parse 用于url处理

python3之模块urllib

urllib是python内置的HTTP请求库,无需安装即可使用,它包含了4个模块: request:它是最基本的http请求模块,用来模拟发送请求 error:异常处理模块,如果出现错误可以捕获这些异常 parse:一个工具模块,提供了许多URL处理方法,如:拆分.解析.合并等 robotparser:主要用来识别网站的robots.txt文件,然后判断哪些网站可以爬 1.urllib.request.urlopen() urllib.request.urlopen(url,data=None