python抓去网页

 最近自己要写一个爬虫,需要抓取网页,然后看了一些别人的技术博客,发现里面都是用python3实现的,因为本人机器上一直搭建的平台是python2.7,因此,在调用包的时候出现一点差别,最后也是多番尝试,实现python 3中的urllib module到python 2.x的urllib和urllib2的调用的一些转换:

  由于python 3中将urllib 分成了 urllib.request/urllib.error/urllib.parse三个部分了,而python 2.x中主要由urllib和urllib2中:

         python 3.x                                python 2.x

  urllib.parse.urlencode(values)       --->   urllib.urlencode(values)

  urllib.request.Request(url, data)    --->   urllib2.Request(url, data)

  urllib.request.urlopen(req)          --->   urllib2.urlopen(req)

等等。下面给一个简单的POST方式抓取网页的对比:

import urllib.parse                          import urllib

import urllib.request                        import urllib2


url = "http://nlp.stanford.edu:8080/parser/"  url = "http://nlp.stanford.edu:8080/parser/"

values = {"query": "I am a processer."}       values = {"query": "I am a processer."}  

data = urllib.parse.Request(values)           data = urllib.urlencode(values)

req = urllib.request.Request(url, data)       req = urllib2.Request(url, data)

response = urllib.request.urlopen(req)        response = urllib2.urlopen(req)

page = response.read()                        page = response.read()


   当然, 这只是一个简单的示例,如果遇到python 3转python2的包的时候出现问题时候,打开对应的module包,从函数名称应该就可以找到你想转换的方法了,希望对你们有用。

你可能感兴趣的:(python,技术,网页,values)