我正在研究一种简单的工具,它将文件传输到硬编码的位置,密码也是硬编码的.我是一个python新手,但多亏了ftplib,很简单:
import ftplib
info= ('someuser', 'password') #hard-coded
def putfile(file, site, dir, user=(), verbose=True):
"""
upload a file by ftp to a site/directory
login hard-coded, binary transfer
"""
if verbose: print 'Uploading', file
local = open(file, 'rb')
remote = ftplib.FTP(site)
remote.login(*user)
remote.cwd(dir)
remote.storbinary('STOR ' + file, local, 1024)
remote.quit()
local.close()
if verbose: print 'Upload done.'
if __name__ == '__main__':
site = 'somewhere.com' #hard-coded
dir = './uploads/' #hard-coded
import sys, getpass
putfile(sys.argv[1], site, dir, user=info)
Run Code Online (Sandbox Code Playgroud)
问题是我找不到任何支持sFTP的库.安全地做这样的事情的正常方法是什么?
编辑:感谢这里的答案,我已经让它与Paramiko合作,这就是语法.
import paramiko
host = "THEHOST.com" …
Run Code Online (Sandbox Code Playgroud) 我正在开发一个可以操作突出显示文本的Firefox扩展程序.
在独立页面上,我可以通过以下方式获取所选文本:
selectedText = document.selection?document.selection.createRange().text;
Run Code Online (Sandbox Code Playgroud)
然后我将使用有问题的textarea上的字符串操作来操作所选文本.不幸的是,对于插件来说这是不可能的,因为我不知道用户所选文本的位置.
有没有办法获取选择文本的元素的名称或更改没有元素名称的选定文本?
这里的任何人都有使用Selenium和webdriverjs的经验吗?我来自非Java背景,对Node.js和JavaScript有着丰富的经验.根据Selenium文档,您必须设置一个独立的Selenium服务器才能使用节点Web驱动程序.幸运的是,它们似乎捆绑在一起.
npm install webdriverjs
获取node_modules/webdriverjs/bin
目录中独立selenium服务器的JAR文件.示例测试位于节点node_modules/webdriverjs/examples
目录中,但是当我从webdriverjs或examples目录运行它们时,测试中的测试失败.
这里遗失的是什么?启动和运行最快的方法是什么?
我已经阅读了文档.
注意:堆栈溢出不允许我使用标记webdriverjs,但这特别是关于webdriverjs,而不是使用selenium与Java或其他语言.
更新:唯一的问题是内置的示例测试被破坏了!