python下载网页方法_Python 下载网页的几种方法
总结下,Python 下载网页的几种方法
1
fd=urllib2.urlopen(url_link)
data=fd.read()
这是最简洁的一种,当然也是Get的方法
2
通过GET的方法
def GetHtmlSource(url):
try:
htmSource = ''
req = urllib2.Request(url)
fd = urllib2.urlopen(req,"")
while 1:
data = fd.read(1024)
if not len(data):
break
htmSource += data
fd.close()
del fd
del req
htmSource = htmSource.decode('cp936')
htmSource = formatStr(htmSource)
return htmSource
except socket.error, err:
str_err = "%s" % err
return ""
3
通过GET的方法
def GetHtmlSource_Get(htmurl):
htmSource = ""
try:
urlx = httplib.urlsplit(htmurl)
conn = httplib.HTTPConnection(urlx.netloc)
conn.connect()
conn.putrequest("GET", htmurl, None)
conn.putheader("Content-Length", 0)
conn.putheader("Connection", "close")
conn.endheaders()
res = conn.getresponse()
htmSource = res.read()
except Exception(), err:
trackback.print_exec()
conn.close()
return htmSource
通过POST的方法
def GetHtmlSource_Post(getString):
htmSource = ""
try:
url = httplib.urlsplit("http://app.sipo.gov.cn:8080")
conn = httplib.HTTPConnection(url.netloc)
conn.connect()
conn.putrequest("POST", "/sipo/zljs/hyjs-jieguo.jsp")
conn.putheader("Content-Length", len(getString))
conn.putheader("Content-Type", "application/x-www-form-urlencoded")
conn.putheader("Connection", " Keep-Alive")
conn.endheaders()
conn.send(getString)
f = conn.getresponse()
if not f:
raise socket.error, "timed out"
htmSource = f.read()
f.close()
conn.close() return htmSource except Exception(), err: trackback.print_exec() conn.close() return htmSource
python下载网页方法_Python 下载网页的几种方法相关推荐
- python字符串成熟编码_python字符串转公式两种方法获取网页编码python版
在web开发的时候我们经常会遇到网页抓取和分析,各种语言都可以完成这个功能.我喜欢用python实现,因为python提供了很多成熟的模块,可以很方便的实现网页抓取. 但是在抓取过程中会遇到编码的问题 ...
- python怎么复制字符串_python字符串复制的几种方法
>>> list1 = [1,2] >>> id(list1) 50081032 >>> list2 = list1.copy() >> ...
- python安装gdal包_python安装gdal的两种方法
1.不用手动下载文件,直接执行以下命令即可 conda install gdal 2.首先,下载gdal的whl文件 链接, 官网下载比较慢,GDAL-2.2.4-cp27-cp27m-win_am ...
- python包导入方式_python导包的几种方法(自定义包的生成以及导入详解)
python 导入数据包的几种方法 1.直接导入整个数据包:improt 数据包 2.导入数据包中的某一个函数: from 数据包 improt 函数(当函数这一项为 * 时为导入整个数据包) 3. ...
- python如何删除代码_Python列表删除的三种方法代码分享
1.使用del语句删除元素 >>> i1 = ["a",'b','c','d'] >>> del i1[0] >>> prin ...
- python里的拼接_Python拼接字符串的7种方法总结
前言 忘了在哪看到一位编程大牛调侃,他说程序员每天就做两件事,其中之一就是处理字符串.相信不少同学会有同感. 在Python中,我们经常会遇到字符串的拼接问题,几乎任何一种编程语言,都把字符串列为最基 ...
- python 求组合数最快方法_python求二项式系数的几种方法及性能对比
最近研究了python求二项式系数的几种方法,对比了一下他们的速度 1. 利用阶乘简洁求 #普通阶乘 def fact(n): if n == 0: return 1 else: return n*f ...
- python向上取整的方法_python 取整的两种方法,python向上取整的方法,问题简介: 要把一...
python 取整的两种方法,python向上取整的方法,问题简介: 要把一 问题简介: 要把一个浮点数(float)整数部分提取出来.比如把"2.1"变成"2" ...
- python导入模块方法_Python导入模块的3种方法(非常详细)
许多初学者经常遇到这样的问题: 自定义Python模板后,在其他文件中使用带有import(或从... import)语句导入文件时,Python解释器还会出现以下错误: ModuleNotFound ...
- python安装模块方法_Python安装模块的几种方法
一.方法1: 单文件模块 直接把文件拷贝到 $python_dir/Lib 二.方法2: 多文件模块,带setup.py 下载模块包,进行解压,进入模块文件夹,执行: python setup.py ...
最新文章
- MATH6005 Final Assignment MATH6005 2018-19
- 16.Hadoop架构再探讨第2部分
- ICML 2020 | 第四范式基于AutoML的深度网络记忆性自动化挖掘
- 匈牙利算法java实现_匈牙利算法(Hungarian Algorithm)
- client copy sap论坛上看到的
- notepad++以16进制查看文件
- Linux下Elasticsearch-2.4.0的安装与简单配置(单节点)Head插件安装(已测试)
- 可视化——matplotlib常用api(一)
- 20200216_re数据处理
- 【紫书第七章】暴力美学(能用暴力解决的事情为什么要动脑子?)
- 【语音去噪】基音matlab GUI音频信号去噪【含Matlab源码 1386期】
- Struts 2.0 入门
- Python3中的md5加密
- SVN代码回滚到执行版本
- javaSE之多线程vip插队
- 关于学习的三个认知升级
- 二进制与八进制、十进制、十六进制之间的转换
- 微机原理——8086系统的概述与引脚介绍
- 赛迪研究报告:《2019Micro LED显示研究报告》(可免费下载)
- 1.windows11开启wsl2并安装Ubuntu 20.04
热门文章
- 常用的java包_java的常用包
- mt65xx android phone win10驱动,mt65xx android phone驱动
- java传智播客答案_传智播客_java基础入门习题答案.docx
- 使用paddlepaddle 进行人脸识别
- 推荐一个免费申请ssl数字证书的地方
- 安装openguass数据库配套工具Data Studio
- android o 可下载字体,android自定义字体
- CAD迷你看图 for Mac(MiniCAD)
- Eclipse官网下载java开发安装包
- Java程序开发过程