日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

有道云笔记自动签到

發(fā)布時(shí)間:2023/12/2 编程问答 49 豆豆
生活随笔 收集整理的這篇文章主要介紹了 有道云笔记自动签到 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

最近想弄個(gè)有道云筆記自動(dòng)簽到,于是網(wǎng)上搜了下,就只搜到這篇文章“有道云筆記自動(dòng)簽到”,因?yàn)槭?016年的,所以只有領(lǐng)取簽到獎(jiǎng)勵(lì)空間,不能領(lǐng)取登錄獎(jiǎng)勵(lì)空間和看小視頻獎(jiǎng)勵(lì)空間,于是在這基礎(chǔ)上搞了搞,最終完美搞定,可以自動(dòng)領(lǐng)取登錄獎(jiǎng)勵(lì)空間+簽到獎(jiǎng)勵(lì)空間+看小視頻獎(jiǎng)勵(lì)空間了,下面是具體步驟


1、電腦上安裝 fiddler 抓包軟件??https://www.telerik.com/download/fiddler

2、下面是我的 fiddler 的設(shè)置

3、電腦開啟熱點(diǎn),手機(jī)連接上熱點(diǎn)并設(shè)置下代理,主機(jī)名填電腦開啟熱點(diǎn)的那個(gè)適配器的 IPv4 地址,端口號(hào)填默認(rèn)的 8888,ip 地址可以通過 win + R 打開?cmd 輸入 ipconfig 獲取

4、手機(jī)安裝 fiddler 的證書,打開手機(jī)瀏覽器,輸入電腦 IP 地址:8888 進(jìn)行安裝

5、fiddler 設(shè)置好過濾器,手機(jī)端正常簽到流程操作有道云筆記進(jìn)行抓包,抓到了這些就行了

6、Java 代碼進(jìn)行請(qǐng)求模擬,拷貝后需分析上面你抓到的包,自行替換下面的一些參數(shù),5個(gè)包對(duì)應(yīng)著5個(gè)方法

import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.net.HttpURLConnection; import java.net.URL; import java.io.PrintWriter; import java.util.*; import java.io.*; import java.util.zip.GZIPInputStream;public class Checkin {public static String seesion_cookie = null;public static void main(String[] args) throws IOException {deviceOpen();//System.out.println("deviceOpen:" + deviceOpen());login();//System.out.println("login:" + login());//sync();System.out.println("sync:" + sync());System.out.println("checkIn:" + checkIn());adPrompt();adPrompt();System.out.println("adPrompt:" + adPrompt());System.out.println("-----------------------------------------------------------------------------");}public static String deviceOpen() {String url = "http://note.youdao.com/yws/device_open/poll";String arg = "your_arg";Map<String, String> headers = new HashMap<String, String>();headers.put("Content-Length", "482");headers.put("Content-Type", "application/x-www-form-urlencoded");return sendPost(url, arg, headers);}public static String login() {String url = "https://note.youdao.com/login/acc/co/cq?product=YNOTE&cf=7&替換成你抓到的";String arg = null;Map<String, String> headers = new HashMap<String, String>();headers.put("Content-Length", "482");headers.put("YNOTE-PC", "v2|urstoken||YNOTE||替換成你抓到的");return sendPost(url, arg, headers);}public static String sync() {String url = "https://note.youdao.com/yws/api/daupromotion?method=sync";String arg = "your_arg";Map<String, String> headers = new HashMap<String, String>();headers.put("Cookie", "YNOTE_LOGIN=true;" + seesion_cookie);headers.put("Content-Length", "482");headers.put("Content-Type", "application/x-www-form-urlencoded");return sendPost(url, arg, headers);}public static String checkIn() {String url = "https://note.youdao.com/yws/mapi/user?method=checkin";String arg = "your_arg";Map<String, String> headers = new HashMap<String, String>();headers.put("Cookie", "YNOTE_LOGIN=true;" + seesion_cookie);headers.put("Content-Length", "482");headers.put("Content-Type", "application/x-www-form-urlencoded");return sendPost(url, arg, headers);}public static String adPrompt() {String url = "https://note.youdao.com/yws/mapi/user?method=adPrompt";String arg = "your_arg";Map<String, String> headers = new HashMap<String, String>();headers.put("Cookie", "YNOTE_LOGIN=true;" + seesion_cookie);headers.put("Content-Length", "482");headers.put("Content-Type", "application/x-www-form-urlencoded");return sendPost(url, arg, headers);}public static String sendPost(String url, String param, Map<String, String> headers) {PrintWriter out = null;BufferedReader in = null;StringBuilder result = new StringBuilder();try {URL realUrl = new URL(url);HttpURLConnection conn = (HttpURLConnection) realUrl.openConnection();conn.setRequestMethod("POST");conn.setRequestProperty("Accept-Encoding", "gzip");conn.setRequestProperty("Accept-Charset", "GBK,utf-8;q=0.7,*;q=0.3");for (String key : headers.keySet())conn.setRequestProperty(key, headers.get(key));conn.setRequestProperty("Host", "note.youdao.com");conn.setRequestProperty("Connection", "Keep-Alive");conn.setRequestProperty("User-Agent", "ynote-android");conn.setDoOutput(true);conn.setDoInput(true);out = new PrintWriter(conn.getOutputStream());if (param != null) out.print(param);out.flush();//System.out.println(conn.getResponseCode() + " " + conn.getResponseMessage());for (int i = 1; conn.getHeaderFieldKey(i) != null; ++i) {if (conn.getHeaderFieldKey(i).equals("Set-Cookie") &&conn.getHeaderField(i).contains("YNOTE_SESS=v2")) {seesion_cookie = conn.getHeaderField(i).split(";")[0];//System.out.println("seesion_cookie:" + seesion_cookie);break;}}Reader reader = null;if ("gzip".equals(conn.getContentEncoding())) {//System.out.println("Response body is encoded in gzip.");reader = new InputStreamReader(new GZIPInputStream(conn.getInputStream()));} else {reader = new InputStreamReader(conn.getInputStream());}in = new BufferedReader(reader);String line;while ((line = in.readLine()) != null) {result.append(line);}} catch (Exception e) {System.out.println("sendPost Exception !!! " + e);e.printStackTrace();}finally {try {if (out != null) out.close();if (in != null) in.close();} catch (IOException ex) {ex.printStackTrace();}}return result.toString();} }

7、代碼部署

電腦本地:因?yàn)槭?Java 代碼,所以需要先安裝 JDK,具體怎么安裝百度一下,上面代碼保存為 *.java 文件,新建 *.cmd 或 *.bat 文件,復(fù)制黏貼以下內(nèi)容到文件中

date /t >> log.txt java * >> log.txt

* 代表你自己取的名稱,將 *.java 文件和 *.cmd 文件放到同一個(gè)文件夾,在文件夾的地址欄輸入 cmd 在本目錄下打開命令行,輸入 javac *.java 進(jìn)行編譯,編譯完成后會(huì)生成 *.class 文件,此時(shí)雙擊 *.cmd 或 *.bat 文件便可以運(yùn)行有道云筆記自動(dòng)簽到腳本了,運(yùn)行后會(huì)在當(dāng)前文件夾新生成 log.txt 日志文件,不想要日志文件的可以刪除“>> log.txt”

如果不想每次打開電腦自己點(diǎn)的話可以設(shè)置下電腦的計(jì)劃任務(wù)在什么時(shí)候自動(dòng)運(yùn)行 *.cmd 文件,如我設(shè)置的是開機(jī)時(shí)自動(dòng)運(yùn)行,“起始于”這項(xiàng)需要填上 *.cmd 文件所在目錄

補(bǔ)充:閑每次運(yùn)行都會(huì)打開命令行黑窗口的可以另外新建一個(gè) *.vbs 文件,內(nèi)容如下,運(yùn)行此文件可以讓 *.cmd 文件在后臺(tái)運(yùn)行而不會(huì)彈出黑窗口

Set ws = CreateObject("Wscript.Shell") ws.run "cmd /c *.cmd", vbhide

服務(wù)器中:以我的 Centos 6 服務(wù)器為例,和電腦本地一樣,需要先安裝好 JDK,然后把代碼文件 *.java 和 *.sh 放在同一個(gè)目錄下,下面是我的 *.sh 文件,請(qǐng)自行更換文件所在路徑和文件名,通過 javac *.java 先編譯一下,通過命令 ./*.sh 便可以執(zhí)行自動(dòng)簽到腳本

# checkin.sh cd /root/youdaoauto date >> checkin_log java Checkin >> checkin_log

服務(wù)器定時(shí)任務(wù)設(shè)置:crontab -e 打開定時(shí)任務(wù)設(shè)置,我設(shè)置的是每天凌晨1點(diǎn)幫我自動(dòng)簽到

0 1 * * * /root/youdaoauto/checkin.sh

如果遇到定時(shí)任務(wù)沒有按時(shí)執(zhí)行應(yīng)該和服務(wù)器時(shí)區(qū)有關(guān),可以看我的另一篇文章?Linux 修改服務(wù)器時(shí)間的時(shí)區(qū)為 CST

8、搞定

總結(jié)

以上是生活随笔為你收集整理的有道云笔记自动签到的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。