2017年7月31日 星期一

修改 Python 模組


有一個 Django 項目需要搬到另一台伺服器;之前的體驗不好,三次安裝都各有新的問題,Django 並不如想像中好用。就像今次,MySQL 版本只差 0.1,出現了 datetime(6) 問題;出現 Django MySQL 介面問題;Python 模組問題。

把 MySQL 升級後,解決了 datetime(6),能直接匯入 MySQLDump 數據。可是卻出現另一個「Module not found」問題,得把原本的「django.db.backends.mysql」改為「mysql.connector.django」,不然會有「configparser」問題,這是 Python 3 的錯誤。之後就是「Can't multiply sequence by non-int of type 'tuple'」問題。得把 python3.5/site-packages/mysql/connector/django/operations.py 模組內的「bulk_insert_sql(self, fields, num_values)」修改成:
def bulk_insert_sql(self, fields, placeholder_rows):
   placeholder_rows_sql = (", ".join(row) for row in placeholder_rows)
   values_sql = ", ".join("(%s)" % sql for sql in placeholder_rows_sql)
   return "VALUES " + values_sql

2017年7月26日 星期三

SnowNLP


今日嘗試了 SnowNLP 這個 Python Module,用它來進行正體中文分詞。

把先前從 Facebook 抓下來的評語,抽了一少部份放進去;關鍵字得到 base, lasting 服, primavista 及貼, 似乎不太準確。查看學到的詞彚,零零碎碎,同樣沒有多大作用。至於情感分析,「但隻濕粉堅強..控油一流」得出 96.88%, 亦即是正評。這個倒是不錯。

由於上面的測試是用跟來的基本模型,對於特定的行業,應該要用特定的訓練素材。下一次要自行訓練看看,但先要收集同 一行業但不同公司的數據才有下一步。

2017年7月22日 星期六

解決 macOS Server 上的 pgsql: Unable to initialize module 問題


日前為我的私人助理加入擷取 Facebook 社交數據的功能 。本來一切運作良好,可是昨天突然卻抓取失敗。


最奇怪的是擷取程式內發送 LINE 訊息的功能如常運作,但連線的部份卻沒有被執行。於是以 SSH 登入服務器,手動執行 PHP 看看是甚麼問題,得到「pgsql: Unable to initialize module」。可是我一直使用 MySQL,沒有使用過 PGSQL...。


查看 php.ini 發現會導入另一個設定檔。


果真在設定檔內載入了 pgsql 的模組。只要在前面加上分號,儲存並重啟便能解決問題。

2017年7月11日 星期二

解決 Undefined symbols for architecture i386 錯誤


最近在試 Stripe 及 Websocket,發現添加到舊有項目時會出現「Undefined symbols for architecture i386」錯誤;若新建項目則沒有問題。


後來找到原來把「Build Settings」內的「Build Active Architecture Only」設定為「Yes」便能解決。

2017年7月4日 星期二

中文分詞


在機器學習的領域中,英文分詞在很多地方都能學到及應用得到,用 Python 的 TextBlob 也能處理;但是中文卻沒太多的資訊,而且中文的文字素材也少得可憐,得靠自己製作。幸好,還有一個名為 Jieba 的 Python 庫能輕鬆做出中文分詞,又能加入自訂義詞語。今日拿了 Sita 專頁的留言試了一下,不是完美,卻是一個不錯的開始。