利用Python和Selenium使酒店Wifi免費
最近我休年假了,並決定在假期去拜訪朋友。我在一家旅館住了幾天,令我驚訝的是,酒店的wifi收費。這在2018年,你能想像嗎?他們也不是那麼冷酷。你看,這些慷慨的人讓你用wifi20分鐘。整整20分鐘。這幾乎是Minecraft視頻的一半。如果他們讓每個設備在有限的時間內使用互聯網,必須有識別每個設備的方法。路由器通過設備的MAC地址來區分設備。幸運的是,我們可以很容易地改變我們的MAC地址。
使用macchanger有一個非常有用的命令行工具,叫做macchanger。它允許你手動更改、隨機化和恢復設備的MAC地址。這裡是想定期隨機化我們的MAC(每20分鐘),以便無限期地使用免費Wifi。
需要運行3個小命令。這是必需的,因為當網路介面連接到路由器時,macchanger無法工作。
在上面的命令中,wlp3s0是我的網路介面的名稱。你可以通過運行ip a找到你的網路介面的名稱。如果你運行這些命令,可以啟動瀏覽器,然後你會看到要求你付費或試用20分鐘的頁面。時間結束後,你可以再次運行命令並繼續執行。
但這是體力勞動,每小時做3次太重複了。嗯。自動化重複內容的好工具是什麼?
使用Selenium首先,不使用這些命令。使用os模塊,我們可以從腳本運行macchanger。
運行這些命令之後,我們的計算機應該作為一個完全不同的設備自動連接到網路。讓我們打開瀏覽器並嘗試使用互聯網。
sponsored.php網址是我按下免費Wifi鏈接後要跳轉的頁面,因此腳本應該為我們打開登記表單。我們填寫表單。在我而言,它只需要一個電子郵件地址和姓名。如果有更多欄位,你可以以類似的方式填寫它們。
這會填寫表格並按Enter鍵提交。之後,門戶網站問我是否要訂閱它們的電子郵件或類似的東西。當然,我們甚至沒有閱讀就點擊Reject並關閉瀏覽器。
之後,你應該可以聯網。你可以在發現連接消失時運行腳本,或者將其放在cron作業/while循環中。
英文原文:https://gkbrk.com/2018/12/free-hotel-wifi-with-python-and-selenium/
譯者:張新英
TAG:Python部落 |