1.如何在Python中使用urllib2
urllib和urllib2urllib和urllib2都是接受URL请求的相关模块,但是urllib2可以接受一个Request类的实例来设置URL请求的headers,urllib仅可以接受URL。
这意味着,你不可以伪装你的UserAgent字符串等。urllib提供urlencode方法用来GET查询字符串的产生,而urllib2没有。
这是为何urllib常和urllib2一起使用的原因。目前的大部分变量。这里是将字符串打出来而已。
以上可知python代码对于一个基本的url请求是非常简单的。
3.Python爬虫好学吗?
您好,本人具有多年python开发经验,希望能和大家一起讨论python开发共同进步!首先了解下什么是爬虫?爬虫就是一个在网上能按照一定规则,获取自己想要资源的脚本程序。
首先讨论下python爬虫好不好学?对于有python开发基础的人来说,肯定好学,为什么?因为python爬虫无非就是多学python的几个爬虫框架和它的集合三方库而已,例如scrapy,pyspider,rquest,beautifulsoup等。 这对于python开发人员来说,这和学习flask或者tornado并无任何差别,可以很快上手!对于没有python开发经验的人来说,可以说这点就非常难了,可以说如果对于没有编程经验的人来说,这就是天书!再次我们看下python的爬虫框架都有哪些,如果要学习从哪些入手会很快入门?常见的爬虫框架都有以下几种:这些框架,个人建议从scrapy入手,这个框架功能非常强大,并且各大公司对比的应用度也比较高,擅长于数据挖掘,信息处理和历史数据存储,网上也有很多的视频教程供学习!其次是pyspider,这个框架可以在浏览器界面进行脚本编写,并且能够对爬取结果实时查看,结果全部存在后端数据库,还能对任务的优先级进行设置,设置定时任务等!希望我的回答能够帮助到您,如果您有任何疑问,请与我交流,祝您学习进步,工作顺利!!。
4.python怎么学习
看官方的python文档足够了,完整又权威。
有PDF版,也有chm版,也有在线版。每个版本的python都会发布一个同一版本的文档,这样的话也能很好的区分各个版本python的差异。
另外,python只要掌握基本语法之后就可以写程序了,写程序过程就是模块熟悉过程。 像python,perl这种语言,语言本身没多大的作用,是靠它们的内置模块或者第三方模块来体现其强大。
根据你的用途,推介几个模块: 1、解析文档:string和re模块。re是正则表达式模块,这个很重要。
像python、perl这些语言,正则表达式正是这些语言引以为傲的部分。 2、从网页抓取数据:有urllib和urllib2这两个模块外加re模块一般足够用了。
上面说的几个模块均python安装包内已含有,不需要单独下载。 具体写的时候找个例子,照葫芦画瓢,写出来分析分析,写几次就明白了。
5.如何在Python中使用urllib2
urllib2 默认会使用环境变量 http_proxy 来设置 HTTP Proxy。如果想在程序中明确控制 Proxy 而不受环境变量的影响,可以使用下面的方式:
import urllib2
enable_proxy = True
proxy_handler = urllib2.ProxyHandler({"http" : 'IP:8080'})
null_proxy_handler = urllib2.ProxyHandler({})
if enable_proxy:
opener = urllib2.build_opener(proxy_handler)
else:
opener = urllib2.build_opener(null_proxy_handler)
urllib2.install_opener(opener)
这里要注意的一个细节,使用 urllib2.install_opener() 会设置 urllib2 的全局 opener 。这样后面的使用会很方便,但不能做更细粒度的控制,比如想在程序中使用两个不同的 Proxy 设置等。比较好的做法是不使用 install_opener 去更改全局的设置,而只是直接调用 opener 的 open 方法代替全局的 urlopen 方法。
6.python fastcgi怎么获取POST的数据字段
如果你使用了web框架,例如tornado,django,其中自带get,post方法,只要在响应的class里面,定义get,post函数,然后使用self.get_argument("xxx")就可以获得该参数。
如果你没有使用框架,python的urllib2模块,用调用response = urllib2.urlopen(url).read()响应的url,所有post,get的数据都在response注意,response返回应该是json格式的,所以要用json模块,json.loads一下。例如response = urllib2.urlopen(url).read()response = json.loads(response)test = response["test"]。