PCDVD數位科技討論區

PCDVD數位科技討論區 (https://www.pcdvd.com.tw/index.php)
-   七嘴八舌異言堂 (https://www.pcdvd.com.tw/forumdisplay.php?f=12)
-   -   請教高手「表格資料」:擷取(保持原始行列格式)or自動轉換....等 (https://www.pcdvd.com.tw/showthread.php?t=1185440)

XElem 2021-05-05 02:35 PM

請教高手「表格資料」:擷取(保持原始行列格式)or自動轉換....等
 
典故:最近為了整合不同資料來源「國際:疫情、疫苗分配、接種進度」等數據∼參考附圖
在過程中:因偶非相關傳業、又孤陋寡聞∼致使只能手工作業、曠日費時、又難以確保沒紕漏.... :ase


故請教:如何擷取網路上滴「表格資料」(保持原顯示行列格式)....??
例如:「世衛疫苗計畫首批名單」∼其下方滴表格(欄位:橫向排列)....
一但「複製、貼上」後:就變成「單一欄位」滴資料、且「空白數據」會被自動省略.... :jolin:
ps:
若只是少數資料,還能一個個慢慢搬,但多達200餘國(地區)(許多「譯名」不同)滴各項數據.... :nonono:
偶試過複製到「記事本、WordPad」(win)or「Office」(Wps、Open、Libre)等∼結果都一樣.... :cry:
(不知該網頁滴原始表格為何??許多網站滴表格,就能順利複製「原始:行列格式」∼方便許多.... :like: )

---------------------------------------------------------------------------------------

原始:
WHO_分區_成員___牛津疫苗[註]___牛津疫苗___輝瑞疫苗___總計
東南亞___印度___97164000__________________97164000
中東____巴基斯坦_17160000__________________17160000
.....(略:43....)

變成「單一欄位」滴資料,且「空白數據」都被自動省略:
(記事本、WordPad:各數據間會自動多加「一空白行」)
WHO分區
成員
牛津疫苗[註]
牛津疫苗
輝瑞疫苗
總計
東南亞
印度
97164000
97164000
中東
巴基斯坦
17160000
17160000
.....(略:43....)

XElem 2021-05-05 03:35 PM

目前以下資訊來源:
其中就屬「COVID-19 即時更新報告」 ∼最完整.... :yeah:
也是:最便民、且主動提供「CSV、Excel」等檔案下載.... :like:

至於以下兩家滴「表格資料」,除了有前述問題外(不知是否故意....?? :rolleyes: )
還有多國家(地區)滴「譯名」甚至「別名」滴差異∼須要自行咕狗判斷.... :flash:
ps:雖然偶外語粉破:偶還是希望國家(地區)能附上英文全名∼以便判斷.... :ase
參考:「世衛疫苗計畫首批名單」「新冠疫苗:世界各地和你所在地方接種進展程度」

若後面兩者:也能提供「CSV、Excel」等檔案下載,且國家(地區)能附上英文全名.... :rolleyes:
相信「資料庫」高手們,就能下載後透過工具「自動整合」相關數據∼甚至轉貼分享∼以便查詢.... :agree:
ps:
偶20多年前,玩「資料庫網站」時,只要能直接從源頭獲得數據,就能自動整合&即時上傳更新.... :agree:
奈何:偶近20年來滴荒廢,早已忘光當初所學∼更別提如何獲得「即時資料來源」等相關問題了.... :ase

Gradius 2021-05-05 04:57 PM

不要直接copy網頁,要維持格式可以試試:

資料/從web/(貼上網址)到/匯入

我用的EXCEL版本很舊,新版可能選單已經不一樣了,程序應該差不多吧我猜的

XElem 2021-05-06 05:06 PM

引用:
作者Gradius
不要直接copy網頁,要維持格式可以試試:

資料/從web/(貼上網址)到/匯入

我用的EXCEL版本很舊,新版可能選單已經不一樣了,程序應該差不多吧我猜的

感謝您滴回覆&資訊∼甘溫啦.... :like: ∼偶有找到此一圖文說明.... :agree:
請參考:「Excel 抓取網頁資料,全自動獲取數據不用再複製貼上」

但,不知此功能是否為「M$_EXCEL」限定?? :rolleyes:
偶目前電腦上滴「Office(免費&免安裝版)」(Wps、Open、Libre)等∼都找不到類似滴功能.... :ase
幾經試驗後:發現用「M$_Edge」開啟網頁後,滑鼠右鍵點選「列印」,即可於預覽畫面∼直接複製貼上....
當然:「列印:印表機」也可選擇「另存新檔為PDF」∼只不過此兩種方法,雖可保持大致「原始:行列格式」
可惜:複製貼上卻一樣無法解決「空白數據會被自動省略」滴問題∼偶試過幾種「PDF轉EXCEL」也無解.... :nonono:

以上∼再次感謝您滴回覆&資訊∼甘溫啦.... :like:

darkangel 2021-05-06 07:56 PM

佩服你的熱心。

如果是我的話,
我會寫個爬蟲(web crawler),
以前有做過,但現在不太搞網頁的東西了,
之前有幫別人看一下 selenium 要教人用,
但我沒自己動手寫,
要不要考慮學寫程式啊?
用 Python + Selenium 的話你這個問題應該會很好解決。

別找我,我超懶的,下班後只想癱在沙發上打電動看影片。
偶爾上上論壇/PTT打嘴砲~

:laugh: :laugh: :laugh: :laugh: :laugh:

XElem 2021-05-07 05:27 PM

引用:
作者darkangel
佩服你的熱心。

如果是我的話,
我會寫個爬蟲(web crawler),
以前有做過,但現在不太搞網頁的東西了,
之前有幫別人看一下 selenium 要教人用,
但我沒自己動手寫,
要不要考慮學寫程式啊?
用 Python + Selenium 的話你這個問題應該會很好解決。

別找我,我超懶的,下班後只想癱在沙發上打電動看影片。
偶爾上上論壇/PTT打嘴砲~

:laugh: :laugh: :laugh: :laugh: :laugh:

談不上熱心.... :ase ∼純粹是偶某症頭又發做了.... :laugh: r2~
以前發作時:常常數日廢寢忘食、如瘋似顛∼玩一些有滴沒滴or學一些亂七八糟滴.... :p r2~
現已年過半百∼已經沒啥動力去學些新玩意了∼偶這次只是輕微滴「突發性自作虐」發作罷了.... :laugh: r2~

---------------------------------------------------------------------------------------

30多年前:
非本科相關症頭:高職(機工科)偷學「數位邏輯電路、組合語言」等∼還常買些電子零件來玩....
計概初學basic時∼寫了一個類似「火鳳凰」滴射擊遊戲、以及「猜數字」滴遊戲∼拿來和同學PK....
參考:「TERRA CRESTA 火鳳凰 NICHIBUTSU 1985 街機∼」∼但沒背景圖、功能也陽春許多....
當兵轉服簽後勤(陸航飛修):為了爭取出國受訓(領雙餉)∼卯起來k原文技令(AH-1h、OH-58d)等

20多年前:
非本科相關症頭:為了職場需求,學了「表面黏著技術」&程式編輯、異常檢修、AutoCad....等
和本科相關症頭:為了職場需求,學了「數控切削中心」&程式編輯、異常檢修、MasterCam....等
和網路相關症頭:為了架設論壇&購物車(NT平台),學了「ASP與資料庫」∼本來想用來賺外快.... :ase
和騷包相關症頭:受到影音動畫影響,學了「Flash動畫」∼可惜缺乏美工細胞∼偶用來寫「算命程式」等
ps:這一段期間:因玩不起硬體,偶專玩軟體∼常上網找破解&漢化∼甚至偶爾自行中文化後,再分享出去

近10年來:
因被毀謗,故卯起來k相關法律&打官司∼參考:本人親身經歷:『毀謗侮辱』真實經歷流程∼網路警察資料
「2012是芥末日」:為了迎接傳說中滴「尼比魯碰撞」∼學了一堆天文知識&天體軌跡模擬軟體.... :laugh: r2~
因半退休狀態:吃飽撐了,常去找「北歐:高社會福利國家」相關資訊∼妄想呆完也能夠如同「大同之治」 :agree:


darkangel 2021-05-07 06:05 PM

引用:
作者XElem
談不上熱心.... :ase ∼純粹是偶某症頭又發做了.... :laugh: r2~
以前發作時:常常數日廢寢忘食、如瘋似顛∼玩一些有滴沒滴or學一些亂七八糟滴.... :p r2~
現已年過半百∼已經沒啥動力去學些新玩意了∼偶這次只是輕微滴「突發性自作虐」發作罷了.... :laugh: r2~

---------------------------------------------------------------------------------------

30多年前:
非本科相關症頭:高職(機工科)偷學「數位邏輯電路、組合語言」等∼還常買些電子零件來玩....
計概初學basic時∼寫了一個類似「火鳳凰」滴射擊遊戲、以及「猜數字」滴遊戲∼拿來和同學PK....
參考:「TERRA CRESTA 火鳳凰 NICHIBUTSU 1985 街機∼」 (https://www.youtube.com/watch?v=juqCPAKtnc8)∼但沒背景圖、功能也陽春許多....
當兵轉服簽後勤(陸航飛修):為了爭取出國受訓(領雙餉)∼卯起來k原文技令(AH-1h、OH-58d...


既然如此,那 Python 對你來說應該是手到擒來,
倒不需要用年紀畫地自限,古希臘智者說過活到老學到老,共勉。

:agree: :agree: :agree: :agree: :agree:

XElem 2021-05-07 07:42 PM

引用:
作者darkangel
既然如此,那 Python 對你來說應該是手到擒來,
倒不需要用年紀畫地自限,古希臘智者說過活到老學到老,共勉。

:agree: :agree: :agree: :agree: :agree:

特別感謝您提供滴資訊.... :like: ∼甘溫啦.... :agree:
偶有大致咕狗您提供滴資訊∼若是20年前,偶鐵定撩下去、卯起來學.... :ase
偶之所以失去動力,是因沒受到刺激.... :laugh: r2~現今看淡了許多事∼混吃等死了.... :p r2~
偶現在唯一勉強算滴上滴興趣:是希望外星人趕快來綁架偶∼帶偶去遨遊外太空∼做鬼也開心.... :agree:

ps:以下∼供有類似問題滴網友參考-------------------------------------------------------------

偶剛剛試出了懶人作法∼如下(瀏覽器:M$_Edge):
1.在「世衛疫苗計畫首批名單」 滴表格上,滑鼠右鍵點選「檢視框架來源」
獲得此一頁面內文:"view-source:https://flo.uri.sh/visualisation/5183208/embed?auto=1"

2.以下建議用「Notepad++Portable」or「Win_記事本(編碼:UTF-8)(易出錯)」
複製全文:並將「第47行」內滴所有「""」取代成「"0"」並另存新檔∼例如「try00.html」
(47行開頭:_Flourish_data = {"rows":[{"columns":["東南亞","印度","97164000","",""....)
ps:將「""」取代為「"0"」∼是開啟此一網頁時∼避免「複製貼上」時「空白內容被自動省略」.... :flash:
ps:用「Notepad++」可將整行反白後取代,若用「Win_記事本」則容易出錯∼除非手工一個個取代.... :nonono:

3.用瀏覽器開啟剛改編滴網頁,再用滑鼠右鍵點選「列印」,即可直接使用「複製貼上」or「另存新檔為PDF」
ps:此一方法「複製貼上」預設用「空格」做分隔,視需求可取代為「Tab」等∼以便套用於「EXCEL」上.... :agree:

以下為結果∼懶滴貼圖∼應該不難理解吧.... :ase

原始:
WHO_分區_成員___牛津疫苗[註]___牛津疫苗___輝瑞疫苗___總計
東南亞___印度___97164000____0______0_______97164000
中東____巴基斯坦_17160000____0______0_______17160000
.....(略:43....)

變成:預設用「空格」做分隔
WHO分區 成員 ⽜津疫苗[註] ⽜津疫苗 輝瑞疫苗 總計
東南亞 印度 97164000 0 0 97164000
中東 巴基斯坦 17160000 0 0 17160000
非洲 奈及利亞 16008000 0 0 16008000
東南亞 印尼 0 13708800 0 13708800
東南亞 孟加拉 12792000 0 0 12792000
美洲 巴⻄ 0 10672800 0 10672800
非洲 衣索比亞 8928000 0 0 8928000
非洲 剛果⺠主共和國 6948000 0 0 694800
.....(略:43....)

h12200 2021-05-07 10:23 PM

你要不要去01文書處區、麻辣Excel區問看看
也有很多Excel網頁下載教學文可以看

XElem 2021-05-08 03:59 PM

引用:
作者h12200
你要不要去01文書處區、麻辣Excel區問看看
也有很多Excel網頁下載教學文可以看

已經不用了.... :ase ∼但還是謝謝您滴建議.... :agree:
近10年來:office系列,偶幾乎只用「試算表」來紀錄生活開銷∼其他功能粉少用到.... :ase
頂多前幾年:偶吃撐發作了∼才去整合「勞健保、勞退、年金、所得稅」等&收集「主要國家稅制」
也因對電腦相關不再感興趣&電腦老舊:故現在頂多用些「羽量級、免安裝」滴免費軟體(功能沒那麼多)

--------------------------------------------------------------------------------------

其實:如果真要搞∼直接複習偶20多年前所學即可(若偶以下映像無誤滴話.... :ase )
因為:偶發現以前述三個不同來源滴「資料」即使有更新,但其網址(來源)固定.... :rolleyes:
因此:偶只須自行設計一網頁,引用其網址數據(變數)∼即可即時整合不同來源滴資訊.... :flash:
以上:只須略通動態網頁設計即可∼這招偶20多年前也曾經數度用過(也都會附上原始資訊來源.... :agree:)
但偶主要只用在公家機關公開滴資訊(做不同資料來源整合),若是私人網頁∼偶也會先徵求主人同意.... :agree:

至於網友「darkangel」大大建議滴「爬蟲(web crawler)」方案.... :agree:
似乎也能解決「網址變更」甚至「變數名稱變更」等問題....??∼這偶就沒深究了.... :ase

ps:以下可能會冒犯「darkangel」等網友(專業:程序猿)∼開個玩笑∼還請各位高手海涵.... :ase
如果真要學程式(假若偶年輕20歲) :rolleyes: ∼偶會先練好外語、逃離呆完職場環境(寫程式不如賣雞排.... :laugh: r2~)
偶也不會再去學「自動控制:條件式預設反應」、更別說架網站了(偶懶滴管)∼偶只會去學「AI:深度學習」 :agree:


所有的時間均為GMT +8。 現在的時間是12:41 PM.

vBulletin Version 3.0.1
powered_by_vbulletin 2024。