`

【跟我学Python】第三章.使用Python解析网页

阅读更多

                           

                                   【跟我学Python】第三章.场景三-- 使用Python解析抓取网页

 

使用Python访问网页主要有三种方式: urllib, urllib2, httplib

urllib比较简单,功能相对也比较弱,httplib简单强大,但好像不支持session


1. 最简单的页面访问
res=urllib2.urlopen(url)
print res.read()


2. 加上要get或post的数据
data={"name":"hank", "passwd":"hjz"}
urllib2.urlopen(url, urllib.urlencode(data))


3. 加上http头
header={"User-Agent": "Mozilla-Firefox5.0"}
urllib2.urlopen(url, urllib.urlencode(data), header)

 

更为复杂的操作:使用opener和handler协助操作其它web资源
opener = urllib2.build_opener(handler)
urllib2.install_opener(opener)


4. 加上session
cj = cookielib.CookieJar()
cjhandler=urllib2.HTTPCookieProcessor(cj)
opener = urllib2.build_opener(cjhandler)
urllib2.install_opener(opener)


5. 加上Basic认证
password_mgr = urllib2.HTTPPasswordMgrWithDefaultRealm()
top_level_url = "http://www.163.com/"
password_mgr.add_password(None, top_level_url, username, password)
handler = urllib2.HTTPBasicAuthHandler(password_mgr)
opener = urllib2.build_opener(handler)
urllib2.install_opener(opener)


6. 使用代理
proxy_support = urllib2.ProxyHandler({"http":"http://1.2.3.4:3128/"})
opener = urllib2.build_opener(proxy_support)
urllib2.install_opener(opener)


7. 设置超时
socket.setdefaulttimeout(5)

 

 

场景三:用Python写一个秒杀脚本,能够对淘宝特定页面进行解析

 

proxy_support = urllib2.ProxyHandler({"http":"http://proxy.****.com/"})
opener = urllib2.build_opener(proxy_support)
 urllib2.install_opener(opener)
 res = urllib2.urlopen('http://www.taobao.com/')
 print res.read() #将读取得到整个html页面

#接下来使用beautifulsoup扩展库对html中特定的div进行解析
from bs4 import *
soup = BeautifulSoup(res.read( ))
print(soup.find(id="div1")) #得到id=div1的div

 

分享到:
评论

相关推荐

    Python3编写实用脚本程序-从零学Python-掘金活动.zip

    Python3编写实用脚本程序——从零学Python-掘金活动.zip Python3编写实用脚本程序——从零学Python-掘金活动.zip Python3编写实用脚本程序——从零学Python-掘金活动.zip Python3编写实用脚本程序——从零学Python-...

    python27.dll python27_d.lib 文件

    3. **编译配置**:如果你在开发C或C++的Python扩展模块,必须确保使用与"python27_d.lib"匹配的编译选项和链接器设置。 4. **版本冲突**:如果你的系统上安装了多个Python版本,可能会出现版本混淆,确保你的程序...

    清华大学精品Python学习PPT课件-第3章 Python流程控制.pptx

    清华大学精品Python学习PPT课件-第3章 Python流程控制.pptx 清华大学精品Python学习PPT课件-第4章 Python组合数据类型.pptx 清华大学精品Python学习PPT课件-第5章 Python正则表达式.pptx 清华大学精品Python学习PPT...

    python27_d.lib

    python27_d.lib python27的debug版本的动态库文件

    python37_d.lib

    VS c++ 调用Python3.7.x版本的程序,缺少python37_d.lib链接库,这里为你提供,亲测可以使用。

    大数据必修课 Python基础入门教程 Python自学资料课件-第1章 Python3概述 共51页.pptx

    第3章 Python流程控制.pptx 第4章 Python组合数据类型.pptx 第5章 Python正则表达式.pptx 第6章 Python函数.pptx 第7章 Python模块.pptx 第8章 Python类和对象.pptx 第9章 Python异常.pptx 第10章 Python文件操作....

    清华大学精品Python学习PPT课件-第11章 Python项目实战:爬虫程序.pptx

    清华大学精品Python学习PPT课件-第3章 Python流程控制.pptx 清华大学精品Python学习PPT课件-第4章 Python组合数据类型.pptx 清华大学精品Python学习PPT课件-第5章 Python正则表达式.pptx 清华大学精品Python学习PPT...

    使用Python调用OpenAI接口-OpenAI接口调用python库源码.zip

    使用Python调用OpenAI接口-OpenAI接口调用python库源码.zip使用Python调用OpenAI接口-OpenAI接口调用python库源码.zip使用Python调用OpenAI接口-OpenAI接口调用python库源码.zip使用Python调用OpenAI接口-OpenAI接口...

    下载死慢的python3.9.13.exe

    下载死慢的python3.9.13.exe

    python27_d.lib python27_d.dll

    Python有两个主要版本:Python 2.x和Python 3.x。Python 2.7.6是在Python 2系列中的一个稳定版本,发布于2013年,旨在提供编程接口和执行环境。然而,自2020年1月1日起,Python 2已不再接受官方支持,建议升级到...

    python2.7.5源码与python27_d.dll

    3. 使用`python27_d.lib`编译的扩展模块可以在调试环境中与`python27_d.dll`无缝配合,方便调试。 总结来说,Python 2.7.5源码、`python27_d.dll`和`python27_d.lib`是Python在Windows平台开发中的关键元素。源码...

    优质Python教程 Python3.7从基础入门到精通进阶教程 第14章 Python的高级技术 共20页.ppt

    第3章 列表、元组和字典的基本操作.ppt 第4章 熟练操作字符串.ppt 第5章 程序的控制结构.ppt 第6章 函数.ppt 第7章 对象与类.ppt 第8章 程序调试和异常处理.ppt 第9章 模块与类库.ppt 第10章 日期和时间.ppt 第11章 ...

    python-base.py: 千行代码入门Python python-visual.py: 15张图入门Matplotlib

    python_visual_animation.py: 使用Matplotlib画动态图实例 python_spider.py: 一个很“水”的Python爬虫入门代码文件 python_weibo.py: “史上最详细”的Python模拟登录新浪微博流程 python_lda.py: 玩点高级的--带...

    Python第七章.xmind

    Python第七章.xmind

    python实现的简单的class解析以及简单执行class.zip

    Python中的`java.class`模块或者第三方库如`Jython`、`pycjava`等可以用于处理Java的Class文件。这些工具通常会解析Class文件的魔数、版本信息、常量池、字段、方法、接口、属性等组成部分,然后根据这些信息构建出...

    Python背记手册.pdf

    Python背记手册.pdf

    Python-2.7.7.tgz )

    它在Python的2.x系列中占据着重要地位,因为它是该系列最后一个主要的维护版本,之后社区的焦点转向了Python 3.x系列。这个tgz压缩包包含了Python 2.7.7的完整源代码,为开发者提供了深入学习、自定义编译和调试...

    python-3.8.18.exe

    windwos环境下python 3.8系列32位安装包,仅推荐个人学习、开发、娱乐或者测试环境下使用。

    Python 3.8.19 for Windows 自编译版

    3. 兼容性:测试自编译版与第三方库的兼容性,避免因版本不匹配引发的问题。 4. 社区支持:如果遇到问题,可能需要向社区寻求帮助,因为官方可能不会提供技术支持。 总之,Python 3.8.19 for Windows 自编译版是一...

    Python密码学编程.part1.rar(可复制、可搜索)

    本书是面向初学者的 Python 密码学编程指南通过理论和实例相结合的方式介绍了多种加密算法及其破解方法 。 全书共分 24 章 , 由浅入深地介绍了与密码学编程相关的各类基础知识 、 编程技巧以及算法实现。 除此之外 ...

Global site tag (gtag.js) - Google Analytics