作者查詢 / gmccntzx1
作者 gmccntzx1 在 PTT [ Python ] 看板的留言(推文), 共854則
限定看板:Python
看板排序:
1F→: 先下 `git status` 確認 local 的東西都有 commit10/09 19:27
1F→: 你應該是沒有安裝到那個 library,試著執行以下指令:10/07 10:18
2F→: pip install django_heroku10/07 10:18
3F→: 另外,檢查一下你有沒有照著這個跑過?10/07 10:23
4F→: https://git.io/fxsZk10/07 10:23
5F→: #Running locally 那一段有一個 `pipenv install`10/07 10:25
6F→: 會自動安裝相依的套件,執行完若還有問題再麻煩你回報10/07 10:25
7F→: `$ cd myproject` 的 `myproject` 指的是你要安裝10/07 17:08
8F→: package 的資料夾。以你上面的例子來說,就是要到10/07 17:08
9F→: myproject 這個資料夾安裝 requests 這個 package10/07 17:08
10F→: 回到原本的問題,你在 `Run the app locally` 這個步驟10/07 17:11
11F→: 有成功了嗎?沒有的話,出現什麼錯誤?可否擷圖上來?10/07 17:12
12F→: (建議善用鍵盤上的 Print Screen 鍵,別用手機拍...)10/07 17:13
13F→: 一步一步來,做到哪個步驟有問題就更新此文吧10/07 17:14
14F→: 不然你僅僅敘述說 "下一個階段還是問題不斷..." 或10/07 17:15
15F→: "結果執行問題蠻多的"這類的話,卻沒有把你遇到的情況10/07 17:16
16F→: 說明清楚,大家也不知道該怎麼幫你囉...10/07 17:17
17F→: 再補充一下:你目前回報的進度是執行到 `Push local10/07 17:23
18F→: changes` 對吧? 該頁文件一開始請你安裝 requests 的10/07 17:24
19F→: 位置,就是你從 GitHub clone 下來的 python-getting-10/07 17:25
20F→: started 這個專案。10/07 17:25
21F→: 所以如果你目前 terminal 的位置不在該資料夾的話,請10/07 17:26
22F→: 你輸入 `cd C:\Users\USER\python-getting-started`10/07 17:27
23F→: (按照你給的圖中資料夾所在位置)10/07 17:27
24F→: 之後再執行 heroku 該頁教學的第一個步驟。10/07 17:28
25F→: 你有看到該段標題說 "Installing packages for your10/07 21:33
26F→: project" 吧? 所以該段內容是告訴你,如果你要裝任何10/07 21:34
27F→: package,可以用他敘述的方式安裝。10/07 21:34
28F→: 現在你的目標應該是去跑 heroku 的 tutorial,所以你10/07 21:35
29F→: 如果一直照著 pipenv 的文件跑,你當然不知道指令中10/07 21:36
30F→: `myproject` 是什麼?10/07 21:36
31F→: 所以從這步開始,回頭去看 heroku 的教學,裝完 psql10/07 21:37
32F→: 然後做到第三步完後,你會從他們的 GitHub 把教學用的10/07 21:38
33F→: repo clone 到你的電腦,接著 cd 到該資料夾,輸入10/07 21:39
34F→: `pipenv install requests` 後,看有沒有安裝成功。10/07 21:40
35F→: (以上同時也是此步驟的第一步: https://goo.gl/adzZvb)10/07 21:41
36F→: 另外,根據你這張圖 https://imgur.com/8QsOvay 中的10/07 21:54
37F→: 錯誤訊息,剛剛查到應該是 pipenv 的問題,詳見以下10/07 21:54
38F→: https://git.io/fxs2o10/07 21:55
39F→: 你可以先確認一下你的 pipenv 的版本,試試看以下10/07 21:57
40F→: `pipenv --version`,看你的 pipenv 版本是不是 18.1?10/07 21:58
41F→: 如果是的話,可以先試著用稍早版本的 pipenv,詳情請10/07 22:00
42F→: 見該 issue 中 @nealedj 的回應: https://git.io/fxs2d10/07 22:01
43F→: https://i.imgur.com/FH27eIh.png 環境變數修改一下10/07 23:43
44F→: 倒數第3行 `C:\Users\Username...` 中的 `Username` 請10/07 23:44
45F→: 改成你目前電腦的 username (由其他變數判斷應為 USER)10/07 23:45
46F→: 也就是改成 `C:\Users\USER\AppData\(...後略)`10/07 23:47
47F→: 對了,修正一下我上一段的回應,應該是檢查 pip 的版本10/07 23:59
48F→: 而不是 pipenv 的版本,抱歉10/07 23:59
49F→: 你先測看看照著上述修改環境變數後 pipenv 能不能跑?10/08 10:29
50F→: 可以的話就繼續跑 heroku 的教學, pip 可先不升級。10/08 10:30
51F→: pipenv 是結合 pip + virtualenv 的一個 package10/08 11:05
52F→: 可以讓你安裝其他 package (pip 用途),也可以建立虛擬10/08 11:06
53F→: 環境 (virtualenv 用途)。10/08 11:06
54F→: 那你現在所謂 "不能執行" 的情況是指?10/08 11:07
55F→: 1. 在 cmd 輸入 pipenv 後仍出現 'pipenv' 不是內部或10/08 11:09
56F→: 外部命令... 之類的訊息?10/08 11:09
57F→: 2. 執行 pipenv 時,有跳出其他錯誤訊息?10/08 11:09
58F→: 你如果可以把目前執行到哪一步和遇到的錯誤詳細描述出10/08 11:10
59F→: 來的話,我會比較容易知道怎麼幫你10/08 11:11
60F→: 畢竟在這溝通的方式是透過留言和回文,所以如果你能盡10/08 11:12
61F→: 量把詳細情況說明清楚的話,可以省掉像上述追問詳細情10/08 11:13
62F→: 況的回覆。10/08 11:13
63F→: https://imgur.com/u7cj5TR 從這張圖開始,建議你在10/08 18:22
64F→: 其他地方建立一個專門放 python project 的資料夾,不10/08 18:22
65F→: 要直接在 C:\Users\USER 那邊建立 virtualenv...10/08 18:23
66F→: https://i.imgur.com/idDVruI.png 然後在這張圖中,10/08 18:26
67F→: 你可以直接`cd C:\Users\USER\python-getting-started`10/08 18:27
68F→: 移到該資料夾,不用一直慢慢 cd 回上一層再轉進去...10/08 18:28
69F→: 然後,最後出現的 ModuleNotFoundError ,很明顯就是告10/08 18:28
70F→: 訴你,現在找不到 'django' 這個 module10/08 18:29
71F→: 由於你下 `pipenv install` 指令的地方根本不在該資料10/08 18:30
72F→: 夾,所以當然不會根據 python-getting-started\Pipfile10/08 18:31
73F→: 安裝該專案相依的 package。10/08 18:31
74F→: 所以麻煩你在 python-getting-started 這個資料夾下,10/08 18:32
75F→: 先執行一次 `pipenv install`,再來跑10/08 18:33
76F→: `python manage.py collectstatic` 看看,10/08 18:34
77F→: 有出現什麼錯誤的話再麻煩你回文。10/08 18:34
78F→: 另外,請你也先確認前一步(https://goo.gl/XRzm2k)已經10/08 18:36
79F→: 完成,再跑下一步(就是你現在跑的Run the app locally)10/08 18:36
80F→: heroku 教學那邊的步驟有沒有劃掉不重要,學著看執行10/08 19:49
81F→: 各個命令後產生的訊息來判斷是否成功比較重要。10/08 19:50
82F→: https://imgur.com/Tp6Nodz 從這張看來,你是不是還沒10/08 19:51
83F→: 在該資料夾跑過 `pipenv install`?10/08 19:51
84F→: 你先用原始的 pipfile 跑 `pipenv --three` 看看會不會10/08 20:04
85F→: 也跑出這個錯誤? 我猜你現在遇到這個錯誤是因為你修改10/08 20:05
86F→: pipfile 後(執行這步時),因為編輯器存檔的關係讓檔案10/08 20:06
87F→: 的 encoding 跑掉。 順便問一下你現在是用什麼編輯器10/08 20:06
88F→: 去開 .py 檔?10/08 20:06
89F→: 如果是 notepad 的話,建議你先換著使用 vs code /10/08 20:08
90F→: sublime text / notepad++ ... 等其他文字編輯器。10/08 20:08
91F→: 修正:上面說的`執行這步`是指 https://goo.gl/XRzm2k10/08 20:10
92F→: notepad 是可以沒錯,但請你確定存檔後檔案的 encoding10/08 20:12
93F→: 是 utf-810/08 20:12
94F→: 要修改的是 getting-started 的,因為你現在是在跑10/08 20:14
95F→: heroku 的教學。10/08 20:14
96F→: 所以你先確認現在 getting-started\Pipfile 的內容是不10/08 20:15
97F→: 是長這樣: https://git.io/fxGwn10/08 20:15
98F→: 不是的話請重新 clone 一次 getting-started ,再跑10/08 20:16
99F→: `pipenv --three`10/08 20:16
100F→: (有空去理解一下 pipenv 各個指令的功用 和 pipfile 的10/08 20:17
101F→: 用途)10/08 20:17
102F→: 教學的各個步驟也要理解清楚,不要傻傻的看寫什麼就做10/08 20:18
103F→: 什麼。不然你完全不會進步,然後做錯一步也不知道該怎10/08 20:19
104F→: 麼處理。10/08 20:19
105F→: 現在開始,你跟著教學跑時,最基本要做到的是了解每個10/08 20:20
106F→: 教學中出現的指令的用途是什麼,這部份請善用 google。10/08 20:21
107F→: 補充:你還可以在各種執行指令後面加上 `-h` 去查該指10/08 20:24
108F→: 令的用途。 e.g. `heroku -h`、`pipenv -h`10/08 20:24
109F→: 目前 TypeError: 'module' object is not callable 這10/08 21:32
110F→: 個問題,就是昨天提到 pipenv 用到 pip 18.1 的問題。10/08 21:32
111F→: 請參考這個解法: https://git.io/fxs2d10/08 21:35
112F→: 就是先把 pip 降到 18.0 後再試試看。10/08 21:36
114F→: 同樣的錯誤嗎?10/08 21:57
116F→: 僅以目前的資訊來說,我也無法判斷原因。 或許你可以10/08 22:06
117F→: 試著改用 virtualenv 跑看看。10/08 22:07
118F→: 也就是說,在 getting_started 資料夾底下用virtualenv10/08 22:08
119F→: 建立一個虛擬環境(麻煩先自己 google 一下怎麼用),然10/08 22:09
120F→: 後啟動虛擬環境,在虛擬環境內用 pip 安裝這個步驟中10/08 22:10
121F→: (https://goo.gl/XRzm2k) Pipfile 裡 [packages] 列出10/08 22:10
122F→: 的所有 package 。10/08 22:11
123F→: 記得用 virtualenv 時, Python 的版本用 3.6。10/08 22:12
124F→: 上述步驟如果都完成後,再繼續跟著 heroku 教學的10/08 22:14
125F→: # Push local changes 這步驟繼續做。10/08 22:14
126F→: 然後記得,因為現在改用 virtualenv 了,所以在教學裡10/08 22:15
127F→: 看到任何使用 pipenv 的指令,都要改為用 virtualenv10/08 22:15
128F→: 或 pip 去執行。10/08 22:16
129F→: 以 `$ pipenv install requests` 這個指令來說,要改為10/08 22:16
130F→: `pip install requests` 才行。10/08 22:16
131F推: 恭喜解決啦!接下來的部份建議你去看 heroku 的文件或10/09 10:23
132F→: 網路上其他人的教學,去了解一下怎麼用 heroku 架設,10/09 10:24
133F→: 不建議你直接將自己的網頁蓋過去。10/09 10:24
134F→: 雖然說你可以從 getting-started/hello/templates 裡面10/09 10:25
135F→: 看到 3 個 html 檔,自行去更改內容是會有成果沒錯,但10/09 10:26
136F→: 要做到比較複雜的東西時,僅僅去改 html 是完全不夠的10/09 10:28
3F→: 你的 In [76] 執行結果應該是 In [72] 的最後一段10/07 22:56
4F→: 所以請試著完整的執行 In [72] 並對裡面的10/07 22:58
5F→: content_container.text decode10/07 22:58
6F→: 講簡單點:把 In [76] 的那行 print 取代掉 In [72] 的10/07 23:00
7F→: 那行 print ...10/07 23:00
8F→: 因為你寫入一段後就馬上把 file 關了10/07 23:12
9F→: 所以你 for 迴圈裡在做的事情是:10/07 23:13
10F→: 1. 取得 content_container.text10/07 23:14
11F→: 2. 開一個新的 file ("fuckyou123.txt")10/07 23:15
12F→: 3. 寫入 content_container.text10/07 23:15
13F→: 4. 關閉 file ("fuckyou123.txt")10/07 23:16
14F→: 由於 file open 的方式是 'w' (write),所以每次都會以10/07 23:16
15F→: 一個新檔案覆蓋掉原本的檔案。又加上 file 的 open/10/07 23:17
16F→: close 都在同一個迴圈內,所以實際上這個 file 已經被10/07 23:18
17F→: 覆寫掉很多遍,直到最後一行結束。10/07 23:18
18F→: 所以建議你把 file 的 open/close 移到迴圈外,迴圈內10/07 23:19
19F→: 只負責寫入資料。10/07 23:19
20F→: 要先 open file ,再來寫入資料,最後才 close file10/07 23:33
21F→: 記得你的 `outfile.write(data)` 要放在迴圈內10/07 23:34
22F→: 有解決問題就好,有空可以再看一下 with statement10/07 23:48
23F→: key word: python with "context manager" "file open"10/07 23:50
24F→: keyword*10/07 23:51
25F→: https://goo.gl/Fi9oKQ 直接貼給你好 XD10/07 23:52
26F→: 上面連結的其他內容也可以多看看,希望對你有幫助!10/07 23:53
28F→: 謝謝樓上 d(`・∀・)b10/08 10:34
1F→: 你是用 win 7/8/10? anaconda 配的 Python 是哪一版?10/06 18:02
2F→: 有沒有其他更詳細的訊息可以提供?10/06 18:03
3F→: 沒有的話,你先試試看用 WinPython 好了10/06 18:03
1F→: 請把錯誤訊息完整擷取出來,貼到 pastebin 之類的空間10/04 11:11
2F→: 以目前你給的第一張圖只能從右下角的訊息判斷出應該是10/04 11:13
3F→: spyder kernel 的問題。10/04 11:13
4F→: 還有,用 imgur 貼圖的話,請用網址結尾為 .jpg 的格式10/04 11:14
5F→: 你的第一張 https://i.imgur.com/MrnvtiM.png10/04 11:16
6F→: 第二張 https://i.imgur.com/0Ek8NZc.png10/04 11:16
7F→: 這樣才會自動開圖,讓其他關注這個問題的人方便查看10/04 11:16
8F→: 接下來,只能等你更新問題才能有進一步的分析10/04 11:18
9F→: 先跟你說一下怎麼貼圖好了... 你上傳完圖片後,在該圖10/04 11:50
10F→: 上點右鍵 → 複製圖片網址,然後就可以貼上來了...10/04 11:51
11F→: 並不是直接在網址後面加圖片的附檔名就可以10/04 11:51
12F→: 回到你的問題,現在需要知道的是你在 spyder 裡面執行10/04 11:52
13F→: 時到底發生了什麼錯誤,等確定後再看是否要重裝10/04 11:52
14F→: 所以我需要你把完整的錯誤訊息擷取出來10/04 11:52
15F→: 另外先補充一個觀念給你,文中談到 spyder 執行腳本時10/04 11:53
16F→: 有記憶性這點,我想你們老師應該是說每次執行script後10/04 11:54
17F→: 變數都還會留著(從spyder的variable explorer判斷)10/04 11:55
18F→: 解決方法 1. 請學著使用 terminal 的方式執行 script10/04 11:56
19F→: 解決方法 2. 把你要執行的部分放在函數內,並在 script10/04 11:57
20F→: 最下方加上 if __name__ == '__main__':10/04 11:57
21F→: 可以參考以下網址中 main.py 的寫法:10/04 11:59
22F→: https://repl.it/@naleraphael/subtractluarray10/04 11:59
23F→: OK, 再來等你貼上完整的錯誤訊息囉10/04 12:06
24F→: 現在這個錯誤訊息是說: 目前的 sympy 需要依賴 mpmath10/04 12:16
25F→: 這個第三方的 library。不過 Anaconda 應該本身有內建10/04 12:17
26F→: 你可以用 conda install mpmath 確認看看10/04 12:17
27F→: 詳細內容可以到那個錯誤訊息給的網址查看。10/04 12:18
28F→: 雖然這個錯誤訊息跟你一開始給的應該是不同的,不過先10/04 12:19
29F→: 確認你的 sympy 能不能正確地被 import。10/04 12:19
30F→: 會用 terminal 嗎? 上面那段指令要輸入在 terminal 裡10/04 12:26
31F→: 移除方法: conda remove PACKAGE10/04 12:27
32F→: 有空可以看看 anaconda 的文件: https://goo.gl/vmA8hf10/04 12:29
33F→: 不,上面我打的 PACKAGE 指的是你想要移除的 package10/04 12:41
34F→: e.g. 你想要移除 mpmath, 就打 conda remove mpmath10/04 12:42
35F→: 所以你現在是想要先完整的移除 anaconda 再重裝囉?10/04 12:57
36F→: 你 google: anaconda fully remove10/04 12:59
37F→: 會有文章說明哪些需要移除10/04 12:59
38F→: fully remove 的話,以前裝的 package 也會一起移除10/04 13:00
39F→: 如有後續消息,麻煩再請你補上... 卡在這連你一開始10/05 21:19
40F→: 提到的錯誤訊息都還不知道完整的內容,我也難受...10/05 21:20
1F→: OOP 的哪個部份不懂? 把自己不懂的部份陳述清楚,別人10/04 12:37
2F→: 才知道怎麼幫你。10/04 12:37
1F推: @WENroger 看到這篇應該可以更了解為什麼把問題敘述09/20 14:21
2F→: 清楚才能更快尋求到幫助了吧?09/20 14:21
1F→: 你都說了「找了很多資料不太容易吸收」,何不試著講出09/19 16:44
2F→: 哪些部份不懂?09/19 16:44
3F→: 將那些不了解的部份整理成問題發上來問,讓大家幫你釐09/19 16:45
4F→: 清觀念,這樣才能學到東西。09/19 16:45
5F→: 不然找了資料給你,大家怎麼知道哪些是你「容易吸收」09/19 16:46
6F→: 的呢?09/19 16:46
7F→: https://git.io/vFLQg -> 順便學著怎麼提問09/19 16:48
10F→: 講明確一點,是不知道怎麼寫爬蟲還是不知道怎麼做到讓09/19 22:18
11F→: 爬蟲定時更新? 既然你都說了有找資料,先試著說說看你09/19 22:18
12F→: 對哪個部份不了解到不知怎麼起手?09/19 22:19
13F→: 過於籠統的問題,別人也很難回答09/19 22:20
18F→: 關於自動更新,先給你些關鍵字: cron job, scheduler09/19 22:44
19F→: 利用這些工具/函式庫去做定期執行爬蟲的工作09/19 22:45
20F→: 當然,新舊資料的整合就要看你自己怎麼處理09/19 22:45
21F→: 關於第二個問題,你說的先將資料匯入 excel 整理後再09/19 22:49
22F→: 匯入資料庫這部份,請問是手動的嗎?09/19 22:49
23F→: 如果你寫的爬蟲部份包含將資料抓下來後寫進資料庫,那09/19 22:50
24F→: 麼當要抓取的資料量和處理時間會多到你手動處理後再匯09/19 22:51
25F→: 修正:會多到和你手動整理資料並匯入的動作起衝突時,09/19 22:52
26F→: 那就當然會影響。09/19 22:53
27F→: 所以這點你就要考慮:09/19 22:53
28F→: 1. 捨棄手動去整理資料的方式,用程式自動化這部份。09/19 22:54
29F→: 2. 如果資料非得經過人工處理,那爬蟲就寫好只負責將09/19 22:55
30F→: 資料抓下來。剩下處理資料和匯入資料庫的部份,就由自09/19 22:55
31F→: 己處理。09/19 22:55
32F→: 關於這兩部份,如果有實作上不懂的細節,你可以整理好09/19 22:58
33F→: 再上來發問,相信會有更專業的人可以幫到你。09/19 22:58
36F推: 不會,我僅能幫到這點程度而已。以後發問時盡量說明09/19 23:07
37F→: 詳細一點,如果是程式實作的問題,可以照著 SSCCE 或09/19 23:08
38F→: MCVE 的規範描述問題,通常能讓別人更快了解並幫助你。09/19 23:10
39F→: 好的提問不僅可以幫助自己,也能讓助人者有收穫,未來09/19 23:12
40F→: 也有機會幫助到其他遇到相同問題的人。加油!09/19 23:12
1F→: https://git.io/fA1B009/16 10:02
2F→: 將 ipykernel 的版本降到 4.8.2 看看09/16 10:03
1F→: res = integrate(...); print(float(res))09/16 09:58
2F→: 你的結果是沒錯的,把結果用 float 表示出來即可09/16 09:59