1.urlparse模块

urlparse.urlparse()      将一个url转化为(prot_sch, net_loc, path, params, query, frag)的元组

urlparse.urlunparse()       将(prot_sch, net_loc, path, params, query, frag)拼接成一个url

urlparse.urljoin()           将url1的base部分与url2的path部分组装成新的url

例如:

>>> import urlparse
>>> urlparse.urlparse("http://www.python.com/doc/FAQ.html")
ParseResult(scheme='http', netloc='www.python.com', path='/doc/FAQ.html', params='', query='', fragment='')

2.urllib模块

使用urllib.urlopen(urlstr, postQueryData)可以返回一个文件对象,用于下载文件

获取到文件对象后,可以使用下面的方法操作文件对象:

f.read([bytes])     从文件中读出所有或bytes个字节

f.readline()      从文件中读出一行

f.readlines()      将文件的每一行读出返回一个列表

f.close()      关闭文件对象

f.fileno()      返回文件的句柄

f.info()      返回文件的MIME头文件

f.geturl()    返回文件真正的url

使用urllib.urlretrieve(urlstr, localfile=None, downloadSta-tusHook=None)可以下载文件并返回(filename, minme_hdrs)的元组

使用urllib.quote()和urllib.quote_plus()可以将url进行编码

使用urllib.unquote()和urllib.unquote_plus()可以将url进行反编码

使用urllib.urlencode(paramDict)可以将参数字典拼接成url

3.urllib2模块

使用urllib2可以解决更复杂的url打开问题,典型的应用是有基本认证需求的web站点

#! /usr/bin/env python
# -*- coding: UTF-8 -*-

import urlparse
import urllib2

USER = '
PASSWORD = 'Chgg123456'
URL = "http://erp.chinahanguang.com"

def handle_auth1(url):
        auth_handler = urllib2.HTTPBasicAuthHandler()
        auth_handler.add_password("Archives", urlparse.urlparse(url)[1], USER, PASSWORD)

        open_handler = urllib2.build_opener(auth_handler)
        urllib2.install_opener(open_handler)
        return url

url = handle_auth1(URL)
f = urllib2.urlopen(url)
print f.readlines()
f.close()

Python的web编程的更多相关文章

  1. Python 之Web编程

    一 .HTML是什么? htyper text markup language 即超文本标记语言 超文本:就是指页面内可以包含图片.链接.甚至音乐.程序等非文字元素 标记语言:标记(标签)构成的语言 ...

  2. Python的Web编程[0] -> Web客户端[1] -> Web 页面解析

     Web页面解析 / Web page parsing 1 HTMLParser解析 下面介绍一种基本的Web页面HTML解析的方式,主要是利用Python自带的html.parser模块进行解析.其 ...

  3. Python的Web编程[1] -> Web服务器[0] -> Web 服务器与 CGI / WSGI

    Web服务器 / Web Server 对于Web来说,需要建立一个Web服务器,必须建立一个基本的服务器和一个处理程序, 基本服务器的主要作用是,在客户端和服务器端完成必要的HTTP交互, 处理程序 ...

  4. Python的Web编程[0] -> Web客户端[0] -> 统一资源定位符 URL

    统一资源定位符 / URL 目录 URL 构成 URL 解析 URL 处理 1 URL构成 统一资源定位符(Uniform Resource Locator) 是对可以从互联网上得到的资源的位置和访问 ...

  5. Python的Web编程[2] -> WebService技术[0] -> 利用 Python 调用 WebService 接口

    WebService技术 / WebService Technology 1 关于webservice / Constants WebService是一种跨编程语言和跨操作系统平台的远程调用技术. W ...

  6. python web编程-概念预热篇

    互联网正在引发一场革命??不喜欢看概念的跳过,注意这里仅仅是一些从python核心编程一书的摘抄 这正是最激动人心的一部分了,web编程 Web 客户端和服务器端交互使用的“语言”,Web 交互的标准 ...

  7. Python 四大主流 Web 编程框架

    Python 四大主流 Web 编程框架 目前Python的网络编程框架已经多达几十个,逐个学习它们显然不现实.但这些框架在系统架构和运行环境中有很多共通之处,本文带领读者学习基于Python网络框架 ...

  8. 系列文章--Python Web编程

    我从网上找到了其他园友的文章,很不错,留着自己学习学习. Python Web编程(一)Python Web编程(二)Python Web编程(三)Python Web编程(四)Python Web编 ...

  9. python web编程-web客户端编程

    web应用也遵循客户服务器架构 浏览器就是一个基本的web客户端,她实现两个基本功能,一个是从web服务器下载文件,另一个是渲染文件 同浏览器具有类似功能以实现简单的web客户端的模块式urllib以 ...

随机推荐

  1. mac下进行连接pptp协议

    环境:mac系统 软件:shimo 协议:pptp协议 说明: mac 自带vpn已经不支持 pptp协议的vpn,可以下载shimo连接. mac下进行vpn连接pptp协议操作方法: 下载: 链接 ...

  2. class文件魔数CAFEBABE的由来

    https://blog.csdn.net/ustcyy91/article/details/78462378 https://blog.csdn.net/renfufei/article/detai ...

  3. Mac定时关机、重启、休眠命令行

    由于一些原因,需要在不上班的时间去连公司电脑来做一些事.所以公司电脑很少关机.但是在没多天没有关机以后电脑会变得很卡.所以现在每天早上去公司的第一件事情就是先重启一下电脑.人工重启,太不符合程序员的作 ...

  4. vsftpd 有关vsftpd的3个注意事项。。sshd[pid]: fatal: chroot into directory without nodev and either noexec or nosuid

    今天帮助已好友配置vsftpd,可能是长时间不用这个东西了,竟然这里个半天才把需求折腾完, 其实需求简单,就是使用系统账户登录,不可跳转目录,限制权限,只能上次不能下载. 懵逼一: 最开始配置sftp ...

  5. django如何语法高亮模块

    首先,django的语法高亮必须配合markdown模块使用. 注意事项: 确保在渲染文本时添加了 markdown.extensions.codehilite 拓展 确保安装了 Pygments. ...

  6. anaconda新建虚拟环境安装各个依赖包

    深度学习的代码,好多都需要安装一些安装包,在服务器上安装需要权限就很麻烦.看到网上有说把这些安装包一个个下载下来上传到服务器再安装,心累,想想工程量就很大~~~ 这时候就可以在anaconda中新建虚 ...

  7. mysql查询表结果排序

    要求:将数据表tab1中DeviceName为‘XI003’,'DO107'的数据放在查询结果的前面,同时对其他查询结果进行降序排序 sql语句: SELECT DISTINCT DeviceName ...

  8. Java多线程编程核心技术(一)Java多线程技能

    1.进程和线程 一个程序就是一个进程,而一个程序中的多个任务则被称为线程. 进程是表示资源分配的基本单位,线程是进程中执行运算的最小单位,亦是调度运行的基本单位. 举个例子: 打开你的计算机上的任务管 ...

  9. Java获取Window和Linux系统的项目ClassPath路径

    不啰嗦,直接复制工具类 /** * 在windows和linux系统下均可正常使用 * Create by yster@foxmail.com 2018/6/6/006 14:51 */ public ...

  10. Groovy语言学习--语法基础(4)

    语法基础到此就结束了,毕竟其和Java许多地方并无差别.groovy作为脚本,是为了能更好地随业务变化调整规则,我根据自己对规则的理解 通过一张图简单描述一个groovy脚本场景:由于货币膨胀,经济收 ...