【按鍵精靈安卓版】對接石墨文檔的教程

昨天有人留言問這么一個問題:

在解決問題之前,我們先要知道石墨文檔是做什么用,(網址https://shimo.im)它是一個在線的word文檔,可以用來存儲圖片、文字,同時把存儲好內容的網址發給別人,這樣別人也可以看到你寫的內容了。并且當你修改文檔中的內容時會自動保存,別人也會實時看到你更改后的內容。

當然說這么多,對于我們腳本有什么作用呢?

①可以做控制開關,比如讓腳本讀取石墨文檔的內容,如果內容中包含我們特定的文字,就讓腳本執行,如果不包含就關閉腳本。我們就可以通過修改文檔隨時控制腳本能否使用。

②話術庫,比如腳本要發送一句話,但是這句話要不定期變化,那么就可以把話術放到石墨文檔中,然后讓腳本讀取石墨文檔,想修改的時候,就直接修改石墨文檔。

③給腳本添加廣告語,這個和第二點一樣,我們把廣告語寫到石墨文檔中,讓腳本讀取然后在運行的時候顯示一下。定期我們通過修改石墨文檔,更換廣告語。

總體來說石墨文檔就相當于一個“在線的txt文檔”的作用,并且是長期有效的。

那問題來了,如果是一個txt文本,不是直接讀取就行了嗎,那還需要什么對接教程?

其實石墨文檔并不是一個TXT文本,而是一個html頁面,舉個例子看一下。

大家可以打開這個網址https://shimo.im/docs/SSChv3Irm5Iu5FwY

看起來很簡潔,就只有一些文字啥的,但是如果我們用url.get命令獲取頁面源碼的時候,會發現它是一個網頁的html文件,而不是只有文字。

traceprint url.get("https://shimo.im/docs/SSChv3Irm5Iu5FwY/read")

因為很多人是不熟悉html靜態頁面的代碼,所以到這步就開始頭大了。

其實大可不必,html本質上就是一大堆文字、字母、數字、符號的組合,當做普通的字符串處理就行。

對于字符串的提取,我們常見的方式就是截取法和正則匹配。

截取法就不說了,看一下我基礎課的第22課,主要就是mid命令及獲取對應的命令參數方法。

下面說下正則匹配:

(一)先找到我們要提取的內容的位置。

在文本中通過ctrl+f查找命令,找到我們要提取文字的所在位置。

(二)單獨復制到一個文本中,分析格式。

通過調整一下換行格式,可以看到每一行文字就是一個p標簽的段落文字 ,

標簽在html代碼中代表段落的意思。

(三)正則匹配

單獨拿出來一行代碼:

<p? line="EnXh">你好,歡迎關注3分鐘學堂公眾號~</p>

寫成正則匹配就是:

shanhai.RegexFind(html,"<p? line="".-"">(.-)</p>")

那么這個<p? line="".-"">(.-)</p>正則匹配表達式是怎么來的呢?

我們先把原始代碼處理一下:

<p? line="隨機不確定的文字">要提取的文字</p>

隨機不確定的文字,我們用符號.-表示,點代表任意內容,減號代表最小的匹配數量。

要提取的文字,我們用(.-)表示,除了點和減號以外,多了一個括號,括號代表其內部是我們要提取的內容。

另外需要格外注意的一點,因為按鍵本身把雙引號作為轉義字符,如果代碼中有雙引號,需要在雙引號前面在加上一個雙引號。

下面我們看一下代碼:

代碼中提取了標題、按段落提取正文,提取全部正文。

由于html代碼除了p標簽以外,還可以能會有span,li,em等別的標簽混在里面,所以我們在寫石墨文檔的時候,不要從別的頁面上直接復制,最好是手動輸入,如果非要復制,那么先把內容放到txt文本中去掉格式,在從文本里面復制出來。

?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。