问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

怎样使用python来ping

发布网友 发布时间:2022-05-10 20:36

我来回答

2个回答

懂视网 时间:2022-05-11 00:57

Ping服务

ping 是基于 XML_RPC 标准协议的更新通告服务,用于Blog把内容更新快速通知给搜索引擎,以便搜索引擎及时进行抓取和更新。

计算机就相当于 RPC Client ,用于向 RPC Server 发起请求,并接受方法的执行结果。

Python实现方法

Python 内置了 XMLRPClib ,可以很方便地处理XMLRPC协议,免去了封包解包的麻烦。

用法很简单,首先导入库:

import xmlrpclib

生成xmlrpc服务器对象:

sever = xmlrpclib.ServerProxy(ServerProxy)

其中 ServerProxy 是搜索引擎的RPC服务器端点地址。

然后便可以执行RPC服务器的方法了,以百度为例:

result = server.weblogUpdates.extendedPing(blog_name,index_addr,new_post_addr,rss_addr)

weblogUpdates.extendedPing 是需要执行的方法,其中括号中的四个参数是 百度ping服务页面 上所要求的。 result 是方法返回的执行结果。

封装代码

在ping_all函数里放上需要ping的链接就可以了,参数按照需求传。

#!/usr/bin/env python
# -*- coding:utf-8 -*-
 
import json
import xmlrpclib
from db import redis
 
 
def ping(ping_url, *args, **kwds):
 """args: site_name, site_host, post_url, rss_url."""
 rpc_server = xmlrpclib.ServerProxy(ping_url)
 result = rpc_server.weblogUpdates.extendedPing(*args)
 print result
 
 
def ping_all(*args, **kwds):
 ping_url_list = [
 'http://ping.baidu.com/ping/RPC2',
 'http://rpc.pingomatic.com/',
 'http://blogsearch.google.com/ping/RPC2',
 ]
 for url in ping_url_list:
 ping(url, *args, **kwds)
 
 
def main():
 client = redis.pubsub()
 client.subscribe(['ping'])
 while True:
 for item in client.listen():
 if item['type'] == 'message':
 msg = item['data']
 if msg:
 post = json.loads(msg)
 print post
 ping_all(post.get('site_name'), post.get('site_host'),
 post.get('post_url'), post.get('rss_url'))
 
 
def test():
 site_name = "tech2ipo"
 site_host = "http://alpha.tech2ipo.com"
 post_url = 'http://alpha.tech2ipo.com/100855'
 rss_url = "http://alpha.tech2ipo.com/rss/alpha.tech2ipo.com"
 ping_all(site_name, site_host, post_url, rss_url)
 
 
if __name__ == '__main__':
 main()

总结

热心网友 时间:2022-05-10 22:05

import os
import re
import time
import sys
import subprocess
 
lifeline = re.compile(r"(\d) received")
report = ("No response","Partial Response","Alive")
 
print time.ctime()
 
for host in range(1,10):
   ip = "192.168.1."+str(host)
   pingaling = subprocess.Popen(["ping","-q", "-c 2", "-r", ip], shell=False, stdin=subprocess.PIPE, stdout=subprocess.PIPE)
   print "Testing ",ip,
   while 1:
      pingaling.stdout.flush()
      line = pingaling.stdout.readline()
      if not line: break
      igot = re.findall(lifeline,line)
      if igot:
           print report[int(igot[0])]
 
print time.ctime()

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
电脑lol突然很卡怎么办啊电脑玩lolfps低怎么解决 危化品仓库有什么设备 香港中文大学2021-2022在河北,重庆最低录取分数线 ChaCheer 洽洽 南瓜子 盐焗味 500g-适用对象 老闫家小粒香南瓜子-适用对象 洽洽盐焗味南瓜子-适用对象 盐焗南瓜子里有添加明矾吗 老街口盐焗味南瓜子500g*2袋量大优惠休闲零食 一天走多少步可以减肥每天走多少步可以减肥 肉炖土豆需要炖多久时间 各种影视会员多少钱? 怎么看自己是思科第几学期 吃什么水果减肥最有效?大神们帮帮忙 21天减肥法,前三天吃了一点点的柚子会效果没那么好吗? 2个店铺怎么把宝贝一键复制到新的淘宝店铺呢? ai 选择线条 中点 ai里的一条直线,怎么 才能准确的确定其中点,并添加描点? 有什么比较高贵,好听,不普遍,的英文名? 清新的蓝色长裙,自带仙气美感,你喜欢吗? 清新雅致的连衣裙,怎样穿才能穿出“仙气”感呢? 昨晚做梦梦到家里有一个很粗的山楂树,上面结了很多山楂。然后姐姐用弓箭射的树上 双层荷叶边一字肩连衣裙,这样仙气满满的穿搭,你爱了吗? “吐槽”是啥意思? 长款碎花裙仙气十足,怎么搭配外套才能穿出百变风格呢? 你见过哪些仙气十足的裙子? 白色挂脖连衣长裙,仙气飘飘,美丽又大方,你觉得这样穿搭时髦吗? 求一款真正能用的变声器 QQ语音 如何才能让自己的软文有更好的推广效果? 餐厅营销都需要注意什么呀? 餐饮主要销售的是什么 作为餐饮行业的销售首先需要做些什么? 请教下,我怎么才能把帖子发送到百度让别人知道,自己在微商代理,吸引更多的人青睐 做微商如何精准引流之百度怎么发帖 微商怎样做百度推广 微商应该如何进行百度推广 奔驰标什么意思? 怎样下载电视到手机上 手机下载电视剧怎么到手机上 RAM 和ROM还有CPU频率 简单说下三者概念 python 怎样去编写一个ping wwww.baidu.com -n 8就是ping之后能带参数的 杭州老鹰画室怎么样? 画室的遭遇 问一问央美的油画系老师? 有没有属于表现主义的 。第三第四画室 现实主义风景画家列维坦的艺术风格是怎样的? 孩子骨密度才32%需要补充些什么呢? 学设计需要去画室学画画还是学电脑?考大学时要去当地考吗? 天蝎座是不是最在乎第一印象呢? 32个月男童,骨密度 sos值3468.z值4.百分位数64,这个结果正常么? 有测过骨密度得吗? 芜湖特产,海南没有的 骨密度检查是X射线吗?