示例
自動訂閱node.js新聞和文章的每週一次免費電子郵件摘要。
安裝
npm i puppeteer -d
main.js
const puppeteer = require('puppeteer');
// 開啟乙個瀏覽器
(async ()=> )
const page = await borswer.newpage();
//跳轉**
await page.goto(`
// 等待目標輸入框出現
await page.waitfor('input[name=email]');
await page.$eval('input[name=email]', el => el.value = '[email protected]');
// 等待目標按鈕出現
await page.waitforselector("button[class='awesome']");
// 點選目標按鈕
await page.click("button[class='awesome']");
})();
更多示例: 夥伴分配器的乙個極簡實現
提起buddy system相信很多人不會陌生,它是一種經典的記憶體分配演算法,大名鼎鼎的linux底層的記憶體管理用的就是它。這裡不 核心這麼複雜實現,而僅僅是將該演算法抽象提取出來,同時給出乙份及其簡潔的原始碼實現,以便定製擴充套件。夥伴分配的實質就是一種特殊的 分離適配 即將記憶體按2的冪進行...
用Ruby實現乙個最簡的區塊鏈
blockchain 是一種革命性的技術,有些抽象,比較複雜.自從位元幣誕生以來,有很多技術的科普文章,甚至是制精良的動畫,來解釋其中的原理.其中不乏精品之作.在區塊鏈的世界,閱讀理論的作用是有限的.離開實踐,力有不逮,心有餘而力不逮,是很常見的.從 到 實現是乙個飛躍,需要一些耐心和技術儲備.lx...
如何通過雪花演算法用Python實現乙個簡單的發號器
實現乙個簡單的發號器 根據snowflake演算法的原理實現乙個簡單的發號器,產生不重複 自增的id。1.snowflake演算法的簡單描述 這裡的snowflake演算法是用二進位制的,有64位。其中41位的時間戳表示 當前時間戳減去某個設定的起始時間,10位標識表示 不同的機器 資料庫的標識id...