码迷,mamicode.com
首页 > 编程语言 > 详细

python网页爬虫

时间:2016-11-05 00:15:09      阅读:289      评论:0      收藏:0      [点我收藏+]

标签:encode   sts   最好   load   间隔   tin   content   data   分享   

以前也接触过爬虫方面的知识,但是总体感觉写爬虫的话,最好使用python,因为python有很多数据采集方面的库,

此外python这面语言使用起来比较简洁易读,在采集的过程中,维护起来也比较方便!

首先来几个简单的数据采集:

import requests

req=requests.get("http://www.baidu.com")

print req.content 

这个相当于简单的http的get 请求!

 

import urllib

req=urllib.urlopen("http://www.baidu.com")

print req.read()

这个相当于简单的爬虫

 

import requests,json

url="http://www.baidu.com/login"

payload={‘username‘:‘admin‘,‘pwd‘:‘mima123‘}

req=requests.get(url,data=json.dumps(payload))

print req.content

这个是带有参数的http的get请求返回的结果是登录成功界面的html,或者是登录失败界面的html

 

import requests,time,urllib

req1=requests.get("http://www.baidu.com")

print req1.content

time.sleep(5)   #---------5秒之后在进行下一步

req2=requests.get("http://www.sougou.com")

print req2.content

time.sleep(5)   #---------5秒之后在进行下一步

req3=urllib.urlopen()

总是多个简单的网页爬取,中间有5秒的时间间隔

 

import urllib,urllib2

url = ‘https://api.douban.com/v2/book/user/ahbei/collections‘ 
data={‘status‘:‘read‘,‘rating‘:3,‘tag‘:‘小说‘}

data=urllib.urlencode(data)

req=urllib2.Request(url,data)

res=urllib2.urlopen(req)

print res.read()

这是一个标准的post请求,但是由于多次访问该网站,很容易ip被封

 

import urllib,urllib2

url = ‘https://api.douban.com/v2/book/user/ahbei/collections‘ 
data={‘status‘:‘read‘,‘rating‘:3,‘tag‘:‘小说‘}

data=urllib.urlencode(data)

req=url+‘?‘+data   #----------------与上面的post请求不同

res=urllib2.urlopen(req)

print res.read()

这是一个带有参数的get请求

 

import urllib,urllib2

body_json{

 

}

req=urllib2.Request("http://www.baidu.com/login",data=urllib.urlencode(body_json))

res=urllib2.urlopen(req)

print res.read()

这是一个带有body部分的post请求

 

今天就分享这些了,下次多分享一些关于python爬虫与接口相关文章

 

python网页爬虫

标签:encode   sts   最好   load   间隔   tin   content   data   分享   

原文地址:http://www.cnblogs.com/111testing/p/6031905.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!