我需要一点帮助,因为我是python的新手,我正在尝试做一个不错的应用程序,可以告诉我我的网站是否已关闭,然后将其发送到Twitter。
class Tweet(webapp.RequestHandler):
def get(self):
import oauth
client = oauth.TwitterClient(TWITTER_CONSUMER_KEY,
TWITTER_CONSUMER_SECRET,
None
)
webstatus = {"status": "this is where the site status need's to be",
"lat": 44.42765100,
"long":26.103172
}
client.make_request('http://twitter.com/statuses/update.json',
token=TWITTER_ACCESS_TOKEN,
secret=TWITTER_ACCESS_TOKEN_SECRET,
additional_params=webstatus,
protected=True,
method='POST'
)
self.response.out.write(webstatus)
def main():
application = webapp.WSGIApplication([('/', Tweet)])
util.run_wsgi_app(application)
if __name__ == '__main__':
main()
现在检查网站部分丢失了,所以我对python非常新,我需要一些帮助
任何可以检查特定网址的功能/类的想法,并且可以使用上面的脚本将答案/错误代码发送到Twitter
我需要一些帮助来实现上面脚本中的url检查,这是我第一次与python交互。
如果你想知道,上层阶级使用https://github.com/mikeknapp/AppEngine-OAuth-Library lib
欢呼声
PS:网址检查功能需要基于urlfetch
类,对谷歌appengine更安全
答案 0 :(得分:3)
您可以使用Google App Engine URL Fetch API fetch()函数返回包含HTTP status_code的Response object。
只需获取网址并使用以下内容检查状态:
from google.appengine.api import urlfetch
def is_down(url):
result = urlfetch.fetch(url, method = urlfetch.HEAD)
return result.status_code != 200
答案 1 :(得分:1)
检查网站是否存在:
import httplib
from httplib import HTTP
from urlparse import urlparse
def checkUrl(url):
p = urlparse(url)
h = HTTP(p[1])
h.putrequest('HEAD', p[2])
h.endheaders()
return h.getreply()[0] == httplib.OK
我们只获取给定URL的标题并检查Web服务器的响应代码。
更新:根据Daenyth的评论修改最后一行。