`
iihero
  • 浏览: 254977 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

python用法: post一个http请求, schedule一个task

阅读更多

内容在http://iihero.cn上也有,这里转摘一下。
近期用空闲时间看了看python的一部分module,感觉这斯功能确实so good, so powerful.
(1) 用它post一个http请求:



importurllib,urllib2,cookielib
defpost3():
#formail.sina.com.cn

cj
=cookielib.CookieJar()
url_login
='http://mail.sina.com.cn/cgi-bin/login.cgi'
body
=(('logintype','login'),('u','username'),
(
'psw','********'))
opener
=urllib2.build_opener(urllib2.HTTPCookieProcessor(cj))
#opener.addheaders=[('User-agent','Opera/9.23')]
opener.addheaders=[('User-agent',
'Mozilla/4.0(compatible;MSIE6.0;WindowsNT5.1)')]
urllib2.install_opener(opener)
req
=urllib2.Request(url_login,urllib.urlencode(body))
u
=urllib2.urlopen(req)
printu.read().decode('utf-8').encode('gbk')

下午,试了一下python的http 相关类的方法,用上述代码登录新浪邮箱,试了一段时间,
比较关键的是User-agent,上边两种浏览器的agent都支持。估计python默认的User-agent得不到sina.com的验证。

python写这种http method代码还是蛮方便的。

(2) 写一个定时执行任务的小东东,这里是单线程版本,要改成多线程的也容易。

#!/usr/bin/envpython
#
coding=utf-8

importthread,time

deftask():
'''
Herewecanexecutesometasktobescheduledeverynseconds
'''
print"taskdoing......"

defmain(n):
t
=time.time()
start_t
=t
end_t
=start_t+60*60*72
#while(t<end_t):
whileTrue:
task()
time.sleep(n)
t
=time.time()

if__name__=="__main__":

try:
main(
5)
exceptKeyboardInterrupt:
print"Systemexit......"
sys.exit(
1)
分享到:
评论

相关推荐

    Python批量发送post请求的实现代码

    作者从一个以Java为生产语言的背景出发,转而使用Python,展示了语言选择的灵活性和Python的易用性。 2. 批量发送POST请求:文档介绍了如何在Python中实现批量发送POST请求的功能。在真实场景中,这种需求可能出现...

    解析Python网络爬虫:核心技术、Scrapy框架、分布式爬虫全套教学资料

    Scrapy是Python的一个强大爬虫框架,它提供了一整套解决方案,包括请求调度、数据提取、中间件处理、项目结构管理等。其主要特性包括: 1. 项目结构:Scrapy项目由多个组件构成,如Spider、Item、Pipeline、...

    libcurl往python简单服务器发送post请求json文件

    在这个场景中,我们关注的是如何使用libcurl库(一个强大的URL传输库)在C++中向一个用Python编写的简单服务器发送POST请求,同时携带JSON数据。让我们深入探讨这个过程中的关键知识点。 首先,我们要了解Python的...

    Python实现简单的HTTP服务器(GET/POST)

    本文将深入探讨如何使用Python实现一个简单的HTTP服务器,支持GET和POST请求。通过理解这个过程,你可以更好地理解网络通信的基本原理,以及Python在网络编程中的应用。 首先,让我们了解HTTP(超文本传输协议)的...

    使用python 2.7来编写post请求接口 。

    1.安装对应的库 2.将test_http_copy.py代码复制到自己的服务器或电脑上 3.python test_http_copy.py启动或(ohup python -u test_http_copy.py &gt; test.log 2&gt;&1 & 后台启动) 4.使用postman调用自测。

    python爬虫: 1、记录捕获各网站的数据 2、逆向JS(请求数据加密、响应数据解密)

    当浏览器访问一个网页时,它会发送一个HTTP GET请求到服务器,服务器接收到请求后返回HTTP响应,其中包含HTML页面内容。Python的requests库可以帮助我们模拟这些操作,通过发送GET或POST请求获取网页内容。 2. 逆向...

    pythonPost请求处理和get请求.zip

    总结,Python3中的HTTP请求处理主要依赖`requests`库,它提供了方便的接口用于发送GET和POST请求,以及处理其他HTTP方法。GET用于获取资源,POST用于提交数据。通过设置请求头和参数,我们可以自定义HTTP请求的细节...

    Python使用grequests(gevent+requests)并发发送请求过程解析

    然而,requests的默认行为是串行发送请求,这意味着一次只能发送一个请求,并且需要等待前一个请求响应后才能继续发送下一个。 2. 串行请求的局限性:由于requests发送请求是串行的,这在需要大量发送请求时将导致...

    Python 访问http, https请求

    在`prnqa-1.1`这个压缩包中,可能包含了一个名为`prnqa`的Python库或项目,它可能是一个用于处理网络请求的工具或者框架。如果你需要进一步了解这个库的功能和用法,可以解压文件并查看其源代码,或者根据博文链接...

    python爬虫请求—post

    5. 检查响应:`requests.post()`会返回一个`Response`对象,我们可以检查它的状态码(status code)和内容(content)来判断请求是否成功。 ```python if response.status_code == 200: print('登录成功') content...

    Python使用requests发送POST请求实例代码

    本文研究的主要是Python使用requests发送POST请求的相关内容,具体介绍如下。 一个http请求包括三个部分,为别为请求行,请求报头,消息主体,类似以下这样: 请求行 请求报头 消息主体 HTTP协议规定post提交的...

    Python实现一个服务器监听多个客户端请求

    学习Python网络通信的时候发现书上只有一个服务端对应一个客户端的情形,于是自己想自己动手实现一个服务端响应多个客户端。 首先建立服务器的socket来监听客户端的请求: tcpSerSock=socket(AF_INET,SOCK_STREAM) ...

    定时微信消息发送python实现

    schedule是一个简单易用的Python定时任务库,可以按照指定时间间隔或指定时间点执行任务。 首先,需要安装schedule库:通过命令`pip install schedule`即可。接下来,可以使用以下代码实现定时任务: ```python ...

    Python程序设计:Python模拟网站登录.pptx

    Python模拟网站登录 INTERNATIONAL MEDICAL SUMMIT FORUM 任务 Python模拟网站登录 任务背景 大多数网站需要登录才可以进行相应的操作。对网站进行扫描的过程中如果遇到登录则需要我们设计符合要求的代码自动登录到...

    python伪造IP多线程发送http请求

    注,需要安全scapy 在centos下,请执行以下脚本安装scapy #!/usr/bin sh cd /tmp wget scapy.net unzip scapy-latest.zip cd scapy-2.* python setup.py install 需要手工启动和杀线程关闭 经测python2可用

    Python-gzipencoding实例如何压缩HTTP请求发送到web服务并处理

    以下是一个例子: ```python import gzip import json import requests data = {"key1": "value1", "key2": "value2"} compressed_data = gzip.compress(json.dumps(data).encode('utf-8')) headers = {'...

    python每天定时执行任务

    在`day_tasks.py`中,使用`APScheduler`的`BackgroundScheduler`创建一个后台调度器,并添加定时任务: ```python from apscheduler.schedulers.background import BackgroundScheduler from apscheduler....

    Python程序设计:requests模块.pptx

    * `requests.request()`: 构造一个请求,支持上述各方法的基础方法。 Response 对象 requests 模块的 Response 对象提供了多种属性来描述 HTTP 响应的信息,包括: * `status_code`: HTTP 请求的返回状态,200 ...

    Python项目二:使用API

    例如,获取一个网页的HTML内容可以通过发送GET请求实现: ```python import requests response = requests.get('http://example.com') print(response.text) ``` 2. **JSON数据处理**:API通常返回JSON格式...

Global site tag (gtag.js) - Google Analytics