这真让我抓狂.到目前为止,我已经删除了1000次此密钥.昨天它就像一个魅力,今天不再是这里是python代码:
from googlemaps import GoogleMaps
gmaps = GoogleMaps("AIzaSyBIdSyB_td3PE-ur-ISjwFUtBf2O0Uo0Jo")
exactaddress ="1 Toronto Street Toronto"
lat, lng = gmaps.address_to_latlng(exactaddress)
print lat, lng
GoogleMapsError: Error 610: G_GEO_BAD_KEY
Run Code Online (Sandbox Code Playgroud)
它现在返回上述错误没有明显的原因.我认为我没有达到请求限制或最大速率为了保持安全,我甚至引入了延迟(1秒)... stil得到相同的错误
有谁知道如何解决这个问题?如果你可以指出我目前正在使用的替代方案,那么必须使用不同的python模块.
谢谢C.
PS:密钥有效,它是客户端密钥,当我在App控制台中启用GoogleMAP API3时,密钥自动启用.对域名或IP没有限制
编辑:所以这是我最终使用的
def decodeAddressToCoordinates( address ):
urlParams = {
'address': address,
'sensor': 'false',
}
url = 'http://maps.google.com/maps/api/geocode/json?' + urllib.urlencode( urlParams )
response = urllib2.urlopen( url )
responseBody = response.read()
body = StringIO.StringIO( responseBody )
result = json.load( body )
if 'status' not in result or result['status'] != 'OK':
return None
else: …
Run Code Online (Sandbox Code Playgroud) 我正在使用 Wireshark 2.4.6 便携式(从他们的网站下载)并且我正在尝试配置远程捕获我不清楚我应该在远程捕获命令行中使用什么。
有一个帮助,但它指的是 CLI 选项 https://www.wireshark.org/docs/man-pages/sshdump.html
在上面的页面上,他们说使用 sshdump CLI 相当于这个 Unix CLI
ssh remoteuser@remotehost -p 22222 'tcpdump -U -i IFACE -w -' > FILE & $ wireshark FILE w
Run Code Online (Sandbox Code Playgroud)
下面是我正在使用的代码.谁能告诉我这里缺少什么?
br.select_form("aspnetForm")
br.form.set_all_readonly(False)
FILENAME="2BProcessed.txt"
#br['ctl00$PlaceHolderMain$UploadDocumentSection$ctl03$InputFile']=FILENAME
br.form.add_file(open(FILENAME), 'text/plain', FILENAME)
print br.form
print "------------------------------------------------"
br.method="POST"
response = br.submit()
#print response.read()
for f in br.forms():
print f
Run Code Online (Sandbox Code Playgroud)
这里是表单之前(空),选择文件,最后提交表单后的样子
发布前的表格
<aspnetForm POST httP://server.addrees.removed... multipart/form-data
<HiddenControl(MSOWebPartPage_PostbackSource=) (readonly)>
<HiddenControl(MSOTlPn_SelectedWpId=) (readonly)>
<HiddenControl(MSOTlPn_View=0) (readonly)>
<HiddenControl(MSOTlPn_ShowSettings=False) (readonly)>
<HiddenControl(MSOGallery_SelectedLibrary=) (readonly)>
<HiddenControl(MSOGallery_FilterString=) (readonly)>
<HiddenControl(MSOTlPn_Button=none) (readonly)>
<HiddenControl(MSOSPWebPartManager_DisplayModeName=Browse) (readonly)>
<HiddenControl(MSOSPWebPartManager_ExitingDesignMode=false) (readonly)>
<HiddenControl(__EVENTTARGET=) (readonly)>
<HiddenControl(__EVENTARGUMENT=) (readonly)>
<HiddenControl(MSOWebPartPage_Shared=) (readonly)>
<HiddenControl(MSOLayout_LayoutChanges=) (readonly)>
<HiddenControl(MSOLayout_InDesignMode=) (readonly)>
<HiddenControl(MSOSPWebPartManager_OldDisplayModeName=Browse) (readonly)>
<HiddenControl(MSOSPWebPartManager_StartWebPartEditingName=false) (readonly)>
<HiddenControl(MSOSPWebPartManager_EndWebPartEditing=false) (readonly)>
<HiddenControl(_maintainWorkspaceScrollPosition=0) (readonly)>
<HiddenControl(__REQUESTDIGEST=0x86FE3811F793DC67C1CA3282A8213erwerC0CD91108B06F41D5C600B09C3A22E0661289A176933917B7D6786859B7717A924AE49E31E5C4B9A01DD25A2EC2,28 Jul 2015 15:52:24 -0000) (readonly)>
<HiddenControl(__VIEWSTATE=/wEPDwUJMzMyMzUzNDsdsdsAmYPZBYCAgEPZBYCAgMPFgIeB2VuY3R5cGUFE211bHRpcGFydC9mb3JtLWRhdGEWCgIRD2QWBGYPZBYEAgEPZBYCZg9kFgQCAg9kFhICAQ8WAh4HVmlzaWJsZWhkAgMPFggeE0NsaWVudE9uQ2xpY2tTY3JpcHQFigFqYXZhU2NyaXB0OkNvcmVJbnZva2UoJ1Rha2VPZmZsaW5lVG9DbGllbnRSZWFsJywxLCAxLCAnaHR0cHM6XHUwMDJmXHUwMDJmc3B4Z3JvdXAucmJjLmNvbVx1MDAyZnducDBcdTAwMmYwNDY5M0thMDAwMDA4NzgnLCAtMSwgLTEsICcnLCAnJykeGENsaWVudE9uQ2xpY2tOYXZpZ2F0ZVVybGQeKENsaWVudE9uQ2xpY2tTY3JpcHRDb250YWluaW5nUHJlZml4ZWRVcmxkHgxIaWRkZW5TY3JpcHQFIVRha2VPZmZsaW5lRGlzYWJsZWQoMSwgMSwgLTEsIC0xKWQCBw8WAh8BaGQCCQ8WAh8BaGQCCw8WAh8BaGQCDw8WAh8BaGQCEQ8WAh8BaGQCEw8WAh8BaGQCFQ8WAh8BaGQCAw8PFgoeCUFjY2Vzc0tleQUBLx4PQXJyb3dJbWFnZVdpZHRoAgUeEEFycm93SW1hZ2VIZWlnaHQCAx4RQXJyb3dJbWFnZU9mZnNldFhmHhFBcnJvd0ltYWdlT2Zmc2V0WQLrA2RkAgMPZBYCAgEPZBYCAgMPZBYCAgEPPCsABQEADxYCHg9TaXRlTWFwUHJvdmlkZXIFEVNQU2l0ZU1hcFByb3ZpZGVyZGQCAQ9kFgYCBQ9kFgICAQ8QFgIfAWhkFCsBAGQCBw9kFgJmD2QWAmYPFCsAA2RkZGQCCQ8PFgIfAWhkZAIdD2QWAmYPDxYEHgRUZXh0BRBTaGFyZWQgRG9jdW1lbnRzHgtOYXZpZ2F0ZVVybAU7L3ducDAvMDQ2OTNLYTAwMDAwODc4L1NoYXJlZCBEb2N1bWVudHMvRm9ybXMvQWxsSXRlbXMxLmFzcHhkZAIjD2QWAgIBD2QWAmYPZBYCAgIPD2QWBh4FY2xhc3MFIm1zLXNidGFibGUgbXMtc2J0YWJsZS1leCBzNC1zZWFyY2geC2NlbGxwYWRkaW5nBQEwHgtjZWxsc3BhY2luZwUBMGQCOQ9kFgICCQ9kFgICAQ8PFgIfAWhkFgICAw9kFgJmD2QWBAIDD2QWAgIFDw8WBB4GSGVpZ2h0GwAAAAAAAHlAAQAAAB4EXyFTQgKAAWQWAgIBDzwrAAkBAA8WBB4NUGF0aFNlcGFyYXRvcgQIHg1OZXZlckV4cGFuZGVkZ2RkAgUPFgIfAWhkAk0PZBYCAgEPZBYGZg8WAh8MBT0vd25wMC8wNDY5M0thMDAwMDA4NzgvU2hhcmVkIERvY3VtZW50cy9XaUZpIEluc3RhbGxhdGlvbiBEYXRhZAIFD2QWBmYPZBYEAgEPZBYCZg8WAh8MBQ9VcGxvYWQgRG9jdW1lbnRkAgQPZBYCAgEPZBYGZg9kFgJmDw8WBB8MBQVOYW1lOh4TQXNzb2NpYXRlZENvbnRyb2xJRAUJSW5wdXRGaWxlZGQCAQ9kFgYCAQ8PFgQeDEVycm9yTWVzc2FnZQUwWW91IG11c3Qgc3BlY2lmeSBhIHZhbHVlIGZvciB0aGUgcmVxdWlyZWQgZmllbGQuHhRPcmlnaW5hbEVycm9yTWVzc2FnZQUwWW91IG11c3Qgc3BlY2lmeSBhIHZhbHVlIGZvciB0aGUgcmVxdWlyZWQgZmllbGQuZGQCAw8PFgQfDQWdAVVwbG9hZC5hc3B4P011bHRpcGxlVXBsb2FkPTEmTGlzdD1kYWQwNDZjMi05M2RiLTQ3ZTktODVkMS1iMzdiYTE2YmMwZjAmUm9vdEZvbGRlcj0lMkZ3bnAwJTJGMDQ2OTNLYTAwMDAwODc4JTJGU2hhcmVkJTIwRG9jdW1lbnRzJTJGV2lGaSUyMEluc3RhbGxhdGlvbiUyMERhdGEfAWhkZAIEDxAPFgIfDAUYT3ZlcndyaXRlIGV4aXN0aW5nIGZpbGVzZGRkZAICDxYCHwFoZAIBD2QWBAIBD2QWAmYPFgIfDAUSRGVzdGluYXRpb24gRm9sZGVyZAIED2QWBAIBD2QWBGYPZBYCZg8PFgIfDAUHRm9sZGVyOmRkAgIPFgIfAWhkAgMPZBYGZg9kFgJmDw8WAh8MZWRkAgEPZBYCAgEPDxYCHwwFGC9XaUZpIEluc3RhbGxhdGlvbiBEYXRhL2RkAgIPFgIfAWhkAgIPDxYCHwFoZGQCBw9kFgICAQ9kFgJmDxYEHglhY2Nlc3NrZXkFAUMeB29uY2xpY2sF4QF3aW5kb3cubG9jYXRpb249J1x1MDAyZnducDBcdTAwMmYwNDY5M0thMDAwMDA4NzhcdTAwMmZTaGFyZWQgRG9jdW1lbnRzXHUwMDJmRm9ybXNcdTAwMmZBbGxJdGVtczEuYXNweD9Sb290Rm9sZGVyPVx1MDAyNTJGd25wMFx1MDAyNTJGMDQ2OTNLYTAwMDAwODc4XHUwMDI1MkZTaGFyZWRcdTAwMjUyMERvY3VtZW50c1x1MDAyNTJGV2lGaVx1MDAyNTIwSW5zdGFsbGF0aW9uXHUwMDI1MjBEYXRhJyBkGAIFHl9fQ29udHJvbHNSZXF1aXJlUG9zdEJhY2tLZXlfXxYBBUFjdGwwMCRQbGFjZUhvbGRlck1haW4kVXBsb2FkRG9jdW1lbnRTZWN0aW9uJGN0bDAzJE92ZXJ3cml0ZVNpbmdsZQVHY3RsMDAkUGxhY2VIb2xkZXJUb3BOYXZCYXIkUGxhY2VIb2xkZXJIb3Jpem9udGFsTmF2JFRvcE5hdmlnYXRpb25NZW51VjQPD2QFBEhvbWVkOhC8IAD1XERhAgYCUaHvvTQe4BY=) (readonly)>
<HiddenControl(__EVENTVALIDATION=/wEWCgLi07123123pn5bCCwLreQLNrvW5AwLY47yCDQKMpf/RBQL7opj3BAKLy4KjDQLHnuf8DwLI6ZCjDAC/5mtuxuY2gn08bbL4JgmPox8f) (readonly)>
<HiddenControl(ctl00$PlaceHolderSearchArea$ctl01$ctl00=https://server.address.removed/wnp0/04693Ka00000878) (readonly)>
<HiddenControl(ctl00$PlaceHolderSearchArea$ctl01$ctl01=https://server.address.removed/wnp0/04693Ka00000878/Shared Documents) …
Run Code Online (Sandbox Code Playgroud) 我正在尝试安装需要 Windos C++ 编译器的 python 包安装过程将我发送到此链接: https: //wiki.python.org/moin/WindowsCompilers
我在 Win 7 x64 上使用 Python 2.7 x86 该页面上指示的版本不再可用(Microsoft Visual C++ 9.0 独立版本:Visual C++ Compiler for Python 2.7 (x86, x64) )
我能做些什么?在哪里可以找到上面的编译器?
我正在尝试使用Unix服务器打开会话,然后将控件释放给脚本用户,直到按下Ctrl + y,之后程序应该控制我使用Eclipse和WinPython 2.7.这是代码
from Exscript.util.interact import read_login
from Exscript.protocols import SSH2
def Test ():
print "Interactive session closed"
account = read_login() # Prompt the user for his name and password
conn = SSH2()
conn.set_driver('generic') # We choose to use SSH2
conn.connect('remmotehostip') # Open the SSH connection
conn.login(account) # Authenticate on the remote host
conn.execute('uname -a') # Execute the "uname -a" command
print conn.response
conn.interact({'\031': Test()})
conn.send('exit\r') # Send the "exit" command
conn.close()
Run Code Online (Sandbox Code Playgroud)
以上失败了
Traceback (most recent call last):
File …
Run Code Online (Sandbox Code Playgroud) 我尝试将 Paramiko 与 SOCKS 代理一起使用(SecureCRT 或 PuTTY 配置为 SOCKS 代理)。我正在使用下面的代码
import paramiko,socks
host, port = '127.0.0.1', 1080
# Set up your proxy information for this socket
sock=socks.socksocket()
sock.set_proxy(
proxy_type=socks.SOCKS4,
addr=host,
port=port,
)
# Connect the socket
sock.connect((host, port))
# Create your Paramiko Transport
transport = paramiko.Transport(sock)
transport.connect(
username='username', #<------not sure if it is needed, the socks proxy needs no username/password
password='secret',
)
client = paramiko.client.SSHClient.connect('remotedevice', username='usernameonremotedevice',sock=sock)
stdin, stdout, stderr=client.exec_command("ls -la")
# Do stuff
# Clean up
client.close()
transport.close()
Run Code Online (Sandbox Code Playgroud)
上述方法似乎让 Paramiko …
我试图了解我是否应该为我的项目使用 GraphDB。我正在映射计算机网络并使用 NetworkX。这些关系是物理或逻辑邻接(L2 和 L3)。在当前的化身中,我的程序扫描网络并将邻接信息转储到 Postgress RDB 中。从那里我使用 Python 使用 NetworkX 构建我的图形。
我试图了解我是否应该改变我的方法,以及将信息存储在 GaphDB 中是否有任何好处。Postgress 有 AgensGraph,它似乎建立在 Postgress 之上,作为 GraphDB 覆盖或插件。我还不知道把它安装在上面是否会让我的生活更轻松。我几乎没有从 SQLite 迁移到 Postgress :-) 和 SQLAlchemy,所以现在不到 3 个月,我就在尽可能地重新考虑事情(迁移尚未完成)
我可以选择使用混合,但我不确定使用 GraphDB 是否有意义。据我了解,这些具有不需要模式的优点(这对像我这样的数据库新手有很大帮助)
我还想知道 NetworkX (Python librayr) 和 GraphDB 是否有任何重叠。据我了解,NetworkX 可以帮助分析图的拓扑结构,而 GraphDB 主要用于查询存储在数据库中的数据。它们有重叠吗?它们可以一起使用吗?
这是在 sqlite 3 中
我在一个表中有位置号和地址(存储为 CHAR)
我在另一个表中有设备名称和其他详细信息,其中设备名称存储为 CHAR,位置号是子字符串或等于设备名称
我希望能够选择所有位置并计算位于该位置的设备数量,并按位置编号分组
这是我正在使用的
Run Code Online (Sandbox Code Playgroud)SELECT v.[TransitNumber],DeviceName,count(NeighborName) from Neighbors n left join VirtualControllers v on v.TransitNumber like '%'+n.DeviceName+'%' group by DeviceName
这使我返回 Null 的转运号码值,我不明白为什么
这是一些数据
TransitNumber DeviceName count(NeighborName)
712bs1 2
712bs2 2
Run Code Online (Sandbox Code Playgroud)
在这种情况下,传输号码应该是 712 (顺便说一句,我实际上正在计算每个设备连接了多少台 PC,但我想知道该位置有多少台 PC
结果应该是
TransitNumber count(NeighborName)
712 4
Run Code Online (Sandbox Code Playgroud)
这是一些数据示例以及我想要实现的目标
Neighbours table
DeviceName Interface NeighbourName
us712bs1 fa0/1 PC1
us712bs1 fa0/2 PC2
us712bs2 fa0/1 PC3
us712bs2 fa0/2 PC4
VirtualCotroller table
TransitNumber Address
712 New York, TimeSquare
Expected result
TransitNumber PCs
712 4
Run Code Online (Sandbox Code Playgroud) 我是 PyQt5 的初学者,请原谅我的无知
我正在尝试将按钮与我定义的功能连接起来
import sys
from PyQt5 import QtGui, QtWidgets,uic
def PrintSomething ():
print("Hello world")
if __name__ == '__main__':
app = QtWidgets.QApplication(sys.argv)
window = uic.loadUi("Auto.ui")
window.show()
sys.exit(app.exec_())
Run Code Online (Sandbox Code Playgroud)
为了执行上述操作,我使用 QtDesigner 向 MainWindow 添加了一个插槽 .. 如图所示,然后我将按钮的 Pressed 信号与主窗口的插槽连接
当我尝试运行该应用程序时,出现此错误:
AttributeError: 'QMainWindow' 对象没有属性 'PrintSomething'
我在这里做错了什么?
更新:
我也用过这个代码
import sys
from PyQt5.QtGui import *
from PyQt5.QtWidgets import *
from PyQt5.QtCore import *
from Auto import Ui_MainWindow
class MainW (QMainWindow):
def __init__(self):
QMainWindow.__init__(self)
self.ui=Ui_MainWindow()
self.ui.setupUi(self)
if __name__ == '__main__':
#topology=topo.LoadTopology()
app = QApplication(sys.argv)
myapp …
Run Code Online (Sandbox Code Playgroud) 如果我将此文本放入 Inventory 文件夹中的文件中
[vyos:vars]
ansible_connection=network_cli
ansible_network_os=vyos
ansible_user=my_vyos_user
ansible_ssh_pass= !vault |
$ANSIBLE_VAULT;1.2;AES256;my_user
66386134653765386232383236303063623663343437643766386435663632343266393064373933
3661666132363339303639353538316662616638356631650a316338316663666439383138353032
63393934343937373637306162366265383461316334383132626462656463363630613832313562
3837646266663835640a313164343535316666653031353763613037656362613535633538386539
65656439626166666363323435613131643066353762333232326232323565376635
Run Code Online (Sandbox Code Playgroud)
我收到此错误消息
[警告]:* 使用 ini 插件解析 /home/myuser/Ansible/Inventory/pwdtest 失败:/home/cristi/Ansible/Inventory/pwdtest:9:预期的 key=value,得到:$ANSIBLE_VAULT;1.2;AES256;my_user
我认为问题归结为将多行字符串分配给 INI 文件中的变量
有人知道我如何使用它吗?我可以在 YAML 文件格式中使用上述内容,但我想保持一致性并在任何地方使用 YAML
import re
collections ={}
collections [re.compile ('n.*')]='word that starts with n'
Run Code Online (Sandbox Code Playgroud)
我希望集合 ['never'] 返回“以 n 开头的单词”,但上述情况不会发生。
我做错了什么?