python - requests如何批量读取并输出

查看:115
本文介绍了python - requests如何批量读取并输出的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

问 题

#-*- coding:utf-8 -*-
import requests
import sys  
reload(sys)  
sys.setdefaultencoding('utf8')

url='https://www.baidu.com/'

payload = {'headers': '', 'index': '1', 'data': '2016-04-01'}
#payload = {'headers': '', 'index': '2', 'data': '2016-04-02'}
#payload = {'headers': '', 'index': '3', 'data': '2016-04-03'}
#这里index和data都要递增

for i in xrange(1,10):
    payload['index']=i
    pay=requests.post(url,data=payload)
    
#这里只有index递增 参考资料https://segmentfault.com/q/1010000004876255
#日期没递增 也需要添加日期递增


#以下是读取上面的pay递增,但这里只能读取一个~~~ 
#参考资料https://segmentfault.com/q/1010000004872027

fileHandle = open ( 'hello.txt', 'w' )
fileHandle.write(pay.text)
fileHandle.close()
    

解决方案

先看答案

import requests
import datetime

#url = 'https://www.baidu.com'
url = 'http://httpbin.org/post'

base_date = datetime.datetime(2016, 4, 1)
base_payload = {'headers': ''}

for i in range(1, 10):
    payload = base_payload.copy()
    payload.update({
        'index': i,
        'data': (base_date + datetime.timedelta(days=i)).strftime('%Y-%m-%d')
    })
    response = requests.post(url, data=payload)
    with open ('{}.text'.format(i), 'w') as fp:
        fp.write(response.text)

结果

这篇关于python - requests如何批量读取并输出的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆