casperjs

    -4熱度

    1回答

    我想以一種沒有界面的編程方式完全模擬瀏覽器,並且需要訪問它的每個方面。如DOM Tree,js執行等。 我讀過phantomjs和casperjs文檔,似乎他們不支持dom樹。 你有什麼建議?

    1熱度

    1回答

    我從我的Ruby on Rails應用程序的後端調用CasperJS,使用Open3.popen3進行命令行調用。文件名(在我的情況下是CoffeeScript)是第一個參數,後面跟着選項。 我的許多咖啡文件都執行類似的任務。我看到了如何在模塊中重用代碼的例子,但我認爲這只是一個NodeJS。 任何建議如何在我的情況下重用通用代碼?我真的非常幹。 UPDATE: hexid's answer是正確

    5熱度

    3回答

    使用CasperJS我如何捕獲和處理CasperError? 默認情況下,程序繼續執行(它什麼都不做,只是傳播錯誤)。 這些錯誤記錄到控制檯/標準輸出,但我似乎沒有看到(從文檔)捕捉和處理這些錯誤的方法。 例子: this.fillSelectors(selector, data); 會產生: CasperError: Errors encountered while filling form

    0熱度

    1回答

    casperjs有沒有辦法忽略特定事件的超時?我知道有一個onStepTimeout函數,但我相信它適用於所有步驟超時。我有一個循環進行刷新,並不在乎它是否超時與其他步驟。基於它正在執行的步驟來標記或忽略超時的任何方法? 編輯:這是我的代碼片段。我得到它的工作使用全局變量標誌,但不知道這是否正確的方法: //flag var tout="yes"; //onStepTimeout funct

    1熱度

    1回答

    在使用摩卡casperjs測試Web應用程序開發: 「文件」 console.logs爲[對象HTMLDocument的] 但document.contains日誌爲未定義。 造成應用程序的JavaScript來: 錯誤:類型錯誤:「未定義」不是(評估「document.contains(項目)」)

    2熱度

    2回答

    我有一個Ruby應用程序,它使用CasperJS來廢棄網站,給出結果並對數據進行一些處理。 現在,我的CasperJS腳本消耗大約200Mb,所以這意味着如果我想並行啓動5個實例,請做數學:)。我正在考慮將其部署到Heroku,但我相信我會打擊工人的內存限制。 我該怎麼做才能減少內存使用量或使其具有可擴展性?我希望能夠並行解析超過10頁。我應該看看另一種替代方案(我真的需要成爲一個無頭瀏覽器,因爲

    2熱度

    1回答

    據我所知open()和waitFor()需要以下步驟被包裹在then(): casper.click(x('//button[text()="Login"]')); casper.waitForSelector(x('//span[text()="Navigation"]]')); casper.capture('1.png'); casper.then(function() {

    1熱度

    1回答

    所以,我有這樣的代碼...... var config = require('./config.js'); var casper = require('casper').create(config.casper); casper.on("page.error", function(msg, trace) { this.echo("Page Error: " + msg, "ERRO

    3熱度

    2回答

    我試圖使用casperjs var casper = require('casper').create({}); casper.start('http://69.50.252.196/'); casper.then(function(){ this.download('http://69.50.252.196/download.csv', 'downloaded.csv'); })

    3熱度

    1回答

    我有一個提交表單並刪除響應的casper腳本。 我試圖設置一個「按需按需」環境,我可以使用PhatomJS網絡服務器將表單值發佈到一個URL,然後在我的Casper腳本中使用該數據來刮頁面,然後打印出響應網頁。我看不到我如何將post變量傳遞給casper,然後將響應傳遞迴Phantom。 我的繼承人基本幻影/卡斯帕結構: var server = require('webserver').cre