目前,安装Chrome扩展程序(在开发中工作时)的唯一方法是将其从桌面拖到浏览器上,然后在弹出窗口中单击"添加".我宁愿让整个过程自动化.我目前以编程方式构建,打包和签署我的CRX,但我仍然坚持最后的手动步骤.这可能吗?
我尝试创建自己的URL来安装CRX(参见此处:将我的URL添加到ExtensionInstallSources首选项后,仍然不允许安装".crx"打包应用程序)但这不起作用.
我希望这个安装是永久性的,而不是只在当前运行期间持续的临时安装.
automation google-chrome google-chrome-extension google-chrome-devtools
我正在寻找一个功能类似于Perl的WWW :: Mechanize的库,但是对于PHP.基本上,它应该允许我使用简单的语法提交HTTP GET和POST请求,然后解析生成的页面并以简单的格式返回所有表单及其字段,以及页面上的所有链接.
我知道CURL,但它有点过于简单,而且语法非常难看(大量的curl_foo($curl_handle, ...)陈述
澄清:
到目前为止,我想要比答案更高级的东西.例如,在Perl中,您可以执行以下操作:
# navigate to the main page
$mech->get( 'http://www.somesite.com/' );
# follow a link that contains the text 'download this'
$mech->follow_link( text_regex => qr/download this/i );
# submit a POST form, to log into the site
$mech->submit_form(
with_fields => {
username => 'mungo',
password => 'lost-and-alone',
}
);
# save the results as a file
$mech->save_content('somefile.zip');
Run Code Online (Sandbox Code Playgroud)
要使用HTTP_Client或wget或CURL做同样的事情会有很多工作,我必须手动解析页面以查找链接,找到表单URL,提取所有隐藏字段,等等.我要求PHP解决方案的原因是我没有使用Perl的经验,而且我可以用很多工作构建我需要的东西,但如果我能在PHP中完成上述操作会更快.
为了我在Windows中的安慰,我想准备一些像Unix一样启动的PHP工具.
FE: composer create-project symfony/framework-standard-edition path/
不: php composer.phar create-project symfony/framework-standard-edition path/
我在系统路径目录中创建了composer.bat文件:
php C:\path\to\composer\composer.phar
Run Code Online (Sandbox Code Playgroud)
它的作用仅仅是用法.但是如何将所有参数和标志转发到命令里?
我想每天午夜运行PHP脚本.在研究了如何做到这一点之后,看来实现这一目标的最佳方法是使用CRON作业.
如果我的PHP脚本位于http://example.com/scripts/scriptExample.php,有人能够显示这个CRON命令的最简单示例吗?
我查看了很多帖子,但我找不到一个足够简单的例子供我学习和建立.
我需要一些身份验证才能获得特定网址.在浏览器中我只需要登录一次,因为可以使用cookie中的会话ID的其他相关URL不需要转到登录页面.同样,我可以--cookies-file=cookies.txt在phantomjs的命令行中使用cookie文件中生成的cookie 来打开需要相同cookie细节的其他页面.
请建议.
我正在使用Puppeteer尝试在所有图像加载后尝试截取网站,但无法使其工作.
这是我到目前为止的代码,我使用https://www.digg.com作为示例网站:
const puppeteer = require('puppeteer');
(async () => {
const browser = await puppeteer.launch();
const page = await browser.newPage();
await page.goto('https://www.digg.com/');
await page.setViewport({width: 1640, height: 800});
await page.evaluate(() => {
return Promise.resolve(window.scrollTo(0,document.body.scrollHeight));
});
await page.waitFor(1000);
await page.evaluate(() => {
var images = document.querySelectorAll('img');
function preLoad() {
var promises = [];
function loadImage(img) {
return new Promise(function(resolve,reject) {
if (img.complete) {
resolve(img)
}
img.onload = function() {
resolve(img);
};
img.onerror = function(e) {
resolve(img);
};
}) …Run Code Online (Sandbox Code Playgroud) 我想自动响应一些程序提示的一些问题,比如mysql提示输入密码,或者当我想用./manage.py rebuild_index重建我的haystack索引时要求'是'或... .
对于MySQL,我可以使用--password =开关,我确信apt有一个'quiet'like选项.但是如何将响应传递给其他程序呢?
我想删除文本框的默认值以输入新值,但我不知道如何做到这一点.
我当时想用CTRL+ a然后Delete但我不知道怎么做.
我甚至使用了WebDriver的命令driver.findElement("locator").clear();.
可访问性标识符是开发人员为GUI对象生成的ID,可用于自动化测试.
A UIBarButtonItem没有实现UIAccessibilityIdentification.但是有可能我可以分配一个辅助功能标识符吗?
automation ×10
php ×2
autoit ×1
batch-file ×1
cron ×1
fabric ×1
ios ×1
javascript ×1
mechanize ×1
node.js ×1
objective-c ×1
phantomjs ×1
puppeteer ×1
python ×1
selenium ×1
selenium-rc ×1
windows ×1