1. 程式人生 > >python 利用 selenium 設定cookie 百度雲自動化上傳

python 利用 selenium 設定cookie 百度雲自動化上傳

突發奇想,家裡攝像頭 如果 家裡進入小偷,把硬碟給你拔走。。。。 是不是 所有的監控都是白搭。

怎麼才能用程式去解決這個問題

於是乎,兩種情況,自己買個伺服器 寫個FTP 伺服器。個人感覺沒有必要,一年好幾百,硬碟還是不夠足夠大。

現在這個雲那個雲,都是給好幾個T 怎麼用都是用不完,我的百度雲 沒有怎麼用過 都給我2T ,足足夠儲存半年,多申請價格賬號。。。。

一開始想過用 lib2 去解決這件事情,但是,過多的 cookie 還有介面需要抓取,直接利用自動測試的 selenium,自己解決個登入問題就OK了,其他 操作 都託管到了瀏覽器上了。省心 省事。

第一步,下載驅動。可以連線上 chrome 。

第二步, browser.get("https://pan.baidu.com/disk/home#list/path=%2F")  直接去請求到列表

第二步是最重要的,這個是為了請求到列表,其實選擇百度雲 還有個原因就是,百度雲 你一旦登入 cookie 是永久的,所以想辦法拿到這個cookie, 很簡單,

瀏覽器開啟除錯模式, 重新整理,看下當前的請求記錄 ,這裡所有的操作都是你在瀏覽器上登入過以後的。 去找你的身份資訊。


這個就是 cookie資訊,拿到以後 改為 name value 的格式,

add_cookie() 到你的程式碼裡。

browser.get("https://pan.baidu.com/disk/home#list/path=%2F") # 先請求一次,讓瀏覽器有cookie的記錄,不然的話 自動登入是不成功的

  browser.add_cookie({'name':'PANWEB', 'value':'1'}) #這裡假裝添加了 所有的 cookie

sleep(4)

browser.get("https://pan.baidu.com/disk/home#list/path=%2F") # 從新請求,自己百度雲的列表。

這裡 如果 cookie 沒有錯誤的話,就是沒有問題的,直接跳到列表

browser.find_element_by_class_name('dlg-mbox-close').click() # 關閉指導頁 不關閉 無法做後面的操作

sleep(2) # 等待幾秒,讓裡面的資料操作完成

browser.find_element_by_id("h5Input1").send_keys(u'/Users/imac/Downloads/測試指令碼.txt')  # 上傳你需要上傳的檔案

browser.close() # 上傳以後關閉瀏覽器

這裡是上傳的核心程式碼,難點就是 怎麼讓你的指令碼自動登入,找到對對應的key值 無設定你的value 進行上傳。

自動登入 是 請求 設定cookie 再請求。就OK 了

如果之後 請求,設定cookie 是不是跳轉到檔案列表介面的

寫程式 做程式設計師 不單單是為了掙錢,也是為了 方便自己,方便他人,歡迎小夥伴提各種需求,讓生活繁瑣的問題程式化

qq:973683374

git:https://github.com/liqingju123/baiduyun/tree/master/selenium_test