urllib库的使用,非常简单。

import urllib2response = urllib2.urlopen("http://www.baidu.com")
print response.read()

只要几句代码就可以把一个网站的源代码下载下来。

官方文档:https://docs.python.org/2/library/urllib2.html

urllib2.urlopen(url[, data[, timeout[, cafile[, capath[, cadefault[, context]]]]])

urlopen 只要用到前面3个参数,url, data:提交的数据. timeout:超时

也可以这样使用:

import urllib2request = urllib2.Request("http://www.baidu.com")
response = urllib2.urlopen(request)
print response.read()

这种用法比较常见。

我们用php创建一个表单,然后用urllib2模拟表单提交

<!doctype html>
<html><head><meta charset="utf-8" /></head><body><?phpif( isset( $_REQUEST['submit'] ) ) {$username = $_REQUEST['username'];$userpwd = $_REQUEST['password'];if( $username == 'ghostwu' && $userpwd = 'abc123') {echo "login success";
}else{echo "login error";
}}?><form action="/index.php" method="get">username: <input type="text" name="username" /><br/>password: <input type="password" name="password" /><br/><input type="submit" value="submit" name="submit" /></form></body>
</html>

接下来,我们先用get方式提交【备注:域名是我本地的,你需要用本地host映射,相应的服务器域名和ip】

#coding:utf-8

import urllib
import urllib2values = { "username" : "ghostwu", "password" : "abc123", "submit" : "submit" }
data = urllib.urlencode( values )
url = "http://mesite.ghostwu" + "?" + data
request = urllib2.Request( url )
response = urllib2.urlopen( request )
print response.read()

执行之后,如果把用户名或者密码该错,就会出现login error.

post提交方式,当然你要把php表单改成post提交.

#!/usr/bin/python
#coding:utf-8

import urllib
import urllib2values = { "username" : "ghostwu2", "password" : "abc123", "submit" : "submit" }
data = urllib.urlencode( values )
url = "http://mesite.ghostwu"
request = urllib2.Request( url, data )
response = urllib2.urlopen( request )
print response.read()

转载于:https://www.cnblogs.com/ghostwu/p/9124310.html

python爬虫入门urllib库的使用相关推荐

  1. python爬虫之urllib库详解

    python爬虫之urllib库详解 前言 一.urllib库是什么? 二.urllib库的使用 urllib.request模块 urllib.parse模块 利用try-except,进行超时处理 ...

  2. python urllib.request 爬虫 数据处理-python 爬虫之 urllib库

    文章更新于:2020-03-02 注:代码来自老师授课用样例. 一.初识 urllib 库 在 python2.x 版本,urllib 与urllib2 是两个库,在 python3.x 版本,二者合 ...

  3. Python 爬虫之urllib库的使用

    urllib库 urllib库是Python中一个最基本的网络请求库.可以模拟浏览器的行为,向指定的服务器发送一个请求,并可以保存服务器返回的数据. urlopen函数: 在Python3的urlli ...

  4. python怎么安装requests库-Python爬虫入门requests库的安装与使用

    Requests库的详细安装过程 对于初学Python爬虫小白,认识和使用requests库是第一步,requests库包含了网页爬取 的常用方法.下面开始安装requests库. 1.检查是否安装过 ...

  5. Python爬虫中urllib库的使用进阶--cookie的使用

    什么是cookie: 在网站中,http请求是无状态的.也就是说即使第一次和服务器连接后并且登录成功后,第二次请求服务器依然不能知道当前请求是哪个用户.cookie的出现就是为了解决这个问题,第一次登 ...

  6. [转载]Python爬虫入门三之Urllib库的基本使用

    python爬虫系列教程http://cuiqingcai.com/1052.html 1.分分钟扒一个网页下来 怎样扒网页呢?其实就是根据URL来获取它的网页信息,虽然我们在浏览器中看到的是一幅幅优 ...

  7. Python爬虫入门(4):Urllib库的高级用法

    Python爬虫入门(1):综述 Python爬虫入门(2):爬虫基础了解 Python爬虫入门(3):Urllib库的基本使用 Python爬虫入门(4):Urllib库的高级用法 Python爬虫 ...

  8. Python爬虫入门(3):Urllib库的基本使用

    Python爬虫入门(1):综述 Python爬虫入门(2):爬虫基础了解 Python爬虫入门(3):Urllib库的基本使用 Python爬虫入门(4):Urllib库的高级用法 Python爬虫 ...

  9. Python爬虫入门之Urllib库的基本使用

    那么接下来,小伙伴们就一起和我真正迈向我们的爬虫之路吧. 1.分分钟扒一个网页下来 怎样扒网页呢?其实就是根据URL来获取它的网页信息,虽然我们在浏览器中看到的是一幅幅优美的画面,但是其实是由浏览器解 ...

最新文章

  1. Unix/Linux/Mac os下 文件互传
  2. UVa 11624,两次BFS
  3. 四川大学研究生的一封公开信
  4. VMware vSphere虚拟化-VMware ESXi 5.5组件安装过程记录
  5. SQL注入之堆叠注入(sql-lab第38关)
  6. linux开发工具之gcc
  7. mysql中如何删除表中int约束,MySQL中的约束,添加约束,删除约束,以及其他修饰
  8. ASP.NET+AJAX简单的文体编辑器
  9. 【华为云技术分享】mongos-sharding连接池配置
  10. Android 系统性能优化(42)---Android代码内存优化建议-Android资源篇
  11. webbrowser控件 加载为空白_深入学习SAP UI5框架代码系列之一:UI5 Module的懒加载机制...
  12. struts2 中的 addActionError 、addFieldError、addActionMessage方法的区别添加错误信息
  13. 第五篇 CSS入门 明白 三种嵌套形式,三种常用控制器
  14. To C、To G、To B,数字化转型
  15. Web前端实现3D旋转魔方相册【超详细】
  16. 基于微信小程序的毕业设计题目(19)php菜谱美食小程序(含开题报告、任务书、中期报告、答辩PPT、论文模板)
  17. 读书、学习、工作和生活中收集的20条经典语录:21-40
  18. 最新Thinkphp仿素材火整站源码修复版 带很多文章
  19. [kuangbin]专题三 Dancing Links Squiggly Sudoku HDU - 4069【DFS】【精确覆盖】
  20. java开发工程师面试自我介绍_Java程序员如何进行自我介绍

热门文章

  1. 联想架构调整:智能手机业务很重要
  2. 【救援过程】升级openssl导致libcrypto.so.1.1动态库不可用
  3. 使用docker-compose进行多节点部署
  4. MySQL 常见操作指令
  5. colsure php_PHP Closure(闭包)类详解
  6. gprs 神奇宝典java,2016联通笔试知识点大全
  7. (C++)1032 挖掘机技术哪家强
  8. java 查询 代码_java使用es查询的示例代码
  9. 零基础可以学好UI设计吗
  10. linux系统中find怎么用,linux系统中‘find’的详细用法