arleigh418 / python-and-Taiwan-stock-market

Python 金融市場賺大錢聖經:寫出你的專屬指標
58 stars 19 forks source link

問題請教 #20

Open kevinhsu1227 opened 2 years ago

kevinhsu1227 commented 2 years ago

作者您好

我是使用spider來跑您的程式 但出現一些問題

  1. section 2.3 您提供的程式僅為 image 之後我依照2-47頁的程式輸入,卻無法執行,是否提供您2-47/與2-48的程式參考
  2. 新聞爬蟲 如圖 我執行之後卻無法看到列印結果,能否告知問題在哪 image

謝謝

arleigh418 commented 2 years ago

Hi 您好,以下答覆您提出的問題:

  1. 2-46說明您應創建一個test.py來引用函數stock_price。函數(def) 直接執行並不會有效果,他需要您去call他並傳入規定的參數。所以2-47~2-48才會有創建一個供您嘗試的test.py來引用看看函數。如果您引用不成功,可以貼上錯誤訊息供參考。test.py沒有附上的原因是,在書中test.py如他的命名,是拿來測試主程式或函數的,若是附上了,整個架構會雜亂無章,平白多出數十支沒什麼意義的test.py。
  2. 在首頁中我們有說明此情況,因yahoo news的網頁改版,所以失效,因此我做了一個替代方案因應新的網站。不過該章節您仍然可以參考參考,因為方法基本上就是那幾個。 附上更新後的說明: https://github.com/arleigh418/python-and-Taiwan-stock-market#yahoo%E8%82%A1%E5%B8%82%E7%B6%B2%E7%AB%99%E6%9B%B4%E6%96%B0
kevinhsu1227 commented 2 years ago

張先生 您好

首先感謝您在假期中撥空回覆我的問題 1-1. print (price.text)沒有看到結果 [image: image.png] 1-2.執行 2-47 上方 test.py 錯誤訊如下圖 [image: image.png]

2.第二個問題我已依照您提供的首頁資訊重新key in ,是有執行但無結果 如下圖2 圖3 圖2 僅print soup,有執行但無結果 [image: image.png] 圖3 完整執行程式 但看不到結果 [image: image.png] 打擾之處 請多包涵

謝謝您

Arleigh Chang @.***> 於 2022年4月4日 週一 下午6:33寫道:

Hi 您好,以下答覆您提出的問題:

  1. 2-46說明您應創建一個test.py來引用函數stock_price。函數(def) 直接執行並不會有效果,他需要您去call他並傳入規定的參數。所以2-47~2-48才會有創建一個供您嘗試的test.py來引用看看函數。如果您引用不成功,可以貼上錯誤訊息供參考。test.py沒有附上的原因是,在書中test.py如他的命名,是拿來測試主程式或函數的,若是附上了,整個架構會雜亂無章,平白多出數十支沒什麼意義的test.py。
  2. 在首頁中我們有說明此情況,因yahoo news的網頁改版,所以失效,因此我做了一個替代方案因應新的網站。不過該章節您仍然可以參考參考,因為方法基本上就是那幾個。 附上更新後的說明: https://github.com/arleigh418/python-and-Taiwan-stock-market#yahoo%E8%82%A1%E5%B8%82%E7%B6%B2%E7%AB%99%E6%9B%B4%E6%96%B0

— Reply to this email directly, view it on GitHub https://github.com/arleigh418/python-and-Taiwan-stock-market/issues/20#issuecomment-1087387578, or unsubscribe https://github.com/notifications/unsubscribe-auth/AO7I5EG7VT7T3EEMND7CDM3VDLANXANCNFSM5SPBC7SQ . You are receiving this because you authored the thread.Message ID: @.*** com>

arleigh418 commented 2 years ago

Hi 您好,如同先前說明,那兩只程式的寫法是函數(def),單獨執行函數不會有結果,函數是一項工具,您得要拿起來用,才有結果。例如您在1.py中有一個函數: def test() ,那您得去引用這個函數,x = test() ,才會運行到那個函數。

kevinhsu1227 commented 2 years ago

張先生 您好 能否請您列出程式供我參考學習 因為我看到後面2.5都是一樣問題 可以執行看不到結果 [image: image.png] [image: image.png]

Arleigh Chang @.***> 於 2022年4月4日 週一 下午8:05寫道:

Hi 您好,如同先前說明,那兩只程式的寫法是函數(def),單獨執行函數不會有結果,函數是一項工具,您得要拿起來用,才有結果。例如您在1.py中有一個函數: def test() ,那您得去引用這個函數,x = test() ,才會運行到那個函數。

— Reply to this email directly, view it on GitHub https://github.com/arleigh418/python-and-Taiwan-stock-market/issues/20#issuecomment-1087471365, or unsubscribe https://github.com/notifications/unsubscribe-auth/AO7I5ECU3RYEIEB2LC5S7ATVDLLJ7ANCNFSM5SPBC7SQ . You are receiving this because you authored the thread.Message ID: @.*** com>

arleigh418 commented 2 years ago

Hi 您好,以下範例。 假設您的函數yahoo_news() 是在 tool.py裡面。 兩個做法: 第一個做法:

  1. 直接在tool.py,函數下方任意 x = yahoo_news() print(x)

第二個做法:

  1. 同一層資料夾開一個test.py。
  2. 在test.py中 import tool x = tool.yahoo_news() print(x)

當然以上範例,如果有值,要傳入值。 上述做法基本上就是2-46下半部到2-48講述內容與程式。 如果還有問題歡迎再提出!