Python 爬蟲高級技巧:突破網路防護、模仿瀏覽器、使用 Cookie 與每日自動化排程全攻略 | 成為爬蟲王 (‧o‧) (‧o‧) (‧o‧)

แชร์
ฝัง
  • เผยแพร่เมื่อ 19 พ.ค. 2024
  • 上一部影片說了,了解運作原理之後,基本上只要能在瀏覽器出現的東西,一定可以用程式爬回來,因為對方不會知道你是機器人還是真人,但要怎麼做呢?今天這部影片就會教你一些爬蟲的小撇部,在這個約 15 分鐘的影片中,我們將會探討從基礎到進階的多種爬蟲技巧,逐步引領各位深入爬蟲的世界。
    第一招:改變 HTTP Header 資訊,這是一個讓您能夠模仿瀏覽器行為,從而能更有效地抓取網站數據的重要步驟。接著,我們會深入探討如何使用 Cookie 進行登入,還有 Cookie 的安全性,最後讓您能夠爬取需要登入才能訪問的網站。但是,僅僅模仿瀏覽器並不足夠。許多現代網站會使用 CSRF Token 來增加安全性,影片也會稍微提及如何正確地處理這些 Token,以順利完成登入過程。
    第二招:我們會講解如何使用 Proxy 服務來更改 IP 地址。這對於避免 IP 被封鎖或實現地區性內容存取非常有用。另外可能會遇到的是 CAPTCHA 機器人驗證,這個可能就不提了,不然講不完 XD
    第三招:執行 JavaScript ,雖然上一支影片有提到,但有小夥伴敲碗想要爬 flaticon,所以我就再補充一下吧,但可惜我爬到 icon8 ,抱歉... 但我實在懶的重拍,反正他們長很像,原諒我吧 XDD
    關於 CAPTCHA 有很多不同的形式,可以選擇簡單的方式來進行,例如Google 的 Captcha 有語音版,比起人都看不清楚的圖片,播放語音後進行語音辨識會比較簡單選出正確答案,這邊就是一個突破口,其他就見超拆招吧~~
    最後,這個影片會提到如何使用系統排程工具(例如 crontab 或 Windows 排程工作)來實現每天的自動化爬蟲任務。這樣,您就可以設定您的爬蟲在特定時間自動運行,不再需要人工執行。
    總之,這部影片涵蓋了 Python 爬蟲的多個方面,從基本操作到進階技巧都有所包含。無論您是爬蟲新手,還是有一定經驗的開發者,都能從這個影片中獲得寶貴的知識和實踐經驗。
    如果你覺得這個影片有幫助,請幫我點個讚,並分享給你的朋友。
    內容概要:
    00:00 開場白
    00:38 爬蟲與瀏覽器的差異
    02:00 偽裝成瀏覽器
    03:03 Cookie?
    05:12 夾帶 Cookie 跳過登入步驟
    07:16 CSRF Token 怎麼處理
    08:18 IP 被禁止 ?!
    08:48 Proxy 代理伺服器
    10:02 實作問題分享 - 動態載入畫面怎麼爬
    11:48 CAPTCHA
    12:02 自動化排程 Windows 工作
    13:40 自動化排程 - crontab
    希望我的影片,新手可以吸收,老手也有能從裡面學到些什麼東西
    如果看完這部影片對你有所幫助,希望你可以幫忙:
    1. 訂閱我的頻道
    2. 給這部影片點讚
    3. 如果你覺得有趣,也希望你可以分享出去
    4. 有什麼問題或希望我做影片的,歡迎留言給我, 我一定盡量回覆
    Icon resource - Icons8: icons8.com/icons
  • วิทยาศาสตร์และเทคโนโลยี

ความคิดเห็น • 74

  • @user-bo9jf3fi5w
    @user-bo9jf3fi5w 8 หลายเดือนก่อน +3

    好腻害!!刚接触到爬虫的知识,就有了这个影片,你是上帝派来的救星啊

    • @recode-0
      @recode-0  8 หลายเดือนก่อน

      希望有幫到你 哈哈

  • @MarkDog0410
    @MarkDog0410 7 หลายเดือนก่อน +1

    講解得有夠清楚,跪著附上我的一鍵
    三連

  • @akebiYY
    @akebiYY 6 หลายเดือนก่อน +2

    連那些英文的頻道都沒您講的清楚~太強了,絕對支持!

    • @recode-0
      @recode-0  6 หลายเดือนก่อน +1

      感謝支持🥹
      之後忙完會再陸續更新!

    • @phonedr.1013
      @phonedr.1013 2 หลายเดือนก่อน

      真的 對岸的也沒這麼清晰 這思路很鬼

  • @oujunhao
    @oujunhao 4 หลายเดือนก่อน

    感谢讲解!学习到了很多东西!

  • @sakasky
    @sakasky 7 หลายเดือนก่อน

    謝謝分享,已訂閱

  • @allenhung4390
    @allenhung4390 5 หลายเดือนก่อน

    感謝講解,學到很多東西

  • @user-yq1mz8wp9n
    @user-yq1mz8wp9n 8 หลายเดือนก่อน

    感謝!講解的簡單明了,希望有機會可以用一個實際爬蟲案例介紹

    • @recode-0
      @recode-0  8 หลายเดือนก่อน

      好哇~ 改天來爬個不會被吉的東西試試吧~
      會被吉的可能要等我可以開通會員頻道再放🙃

    • @evangeline3485id
      @evangeline3485id 8 หลายเดือนก่อน

      @@recode-0加油加油,是不是快要可以開放超級感謝了😂

    • @recode-0
      @recode-0  8 หลายเดือนก่อน

      沒 還有好長一段路要走😉
      YT 好嚴格🥲🥲

    • @user-kf2iq2rl9b
      @user-kf2iq2rl9b 9 วันที่ผ่านมา

      @@recode-0 請問可以爬爬看pinterest嗎,我爬上面的圖都失敗QQ,不知道公開爬會不會被吉

  • @user-hk4pz2of6k
    @user-hk4pz2of6k 3 หลายเดือนก่อน

    這是我看過最完整的實務爬蟲教學
    從伺服器request到proxy 大隊最後自動化排程應有盡有

    • @recode-0
      @recode-0  หลายเดือนก่อน

      以前玩的心路歷程😂

  • @weskersteve8887
    @weskersteve8887 6 หลายเดือนก่อน +1

    第一句话很对,能看到的东西就一定能爬下来!

  • @phonedr.1013
    @phonedr.1013 2 หลายเดือนก่อน

    求未來做一些前端逆向的影片,這種進階的爬蟲台灣完全沒人做,只會爬一些基礎的😂
    然候想請問我想拿我自己的餅乾做永久登入 是有可能的嗎 (網站會讓你可能幾小時後自動登出) 希望能找實例示範相關知識
    太愛了 已訂閱👍👍 必須一生推

    • @recode-0
      @recode-0  2 หลายเดือนก่อน +1

      沒有辦法喔 哈哈
      伺服器發給你 cookie 的時候,上面會紀錄加密的 expired time 。你給他認證的時候會檢查,如果時間過了就算失效。所以永不永久是伺服器端說的算,如果伺服器端願意給你無期限的那就可以~

  • @SurfNordVPN
    @SurfNordVPN 3 หลายเดือนก่อน

    太優質了

  • @modseven
    @modseven 6 หลายเดือนก่อน

    感謝大大

  • @user-ec4qs7nu5m
    @user-ec4qs7nu5m 8 หลายเดือนก่อน

    超級清楚明瞭,但是我要爬的東西 都有驗證碼 而且往往進去網址都不會變動,按旁邊的選單資料都塞在一個又一個的裡面,是不是要爬裡面資料的話,用RE就有困難,只能用selenium進去 一個一個點,一個一個頁面載

    • @recode-0
      @recode-0  8 หลายเดือนก่อน +1

      是的@@ 聽起來好慘
      另一招是你可以打開網路或是原始碼看看他有沒有偷連 api ,有的話直接連過去看看、或是搜一下他的網域看能不能用別招找到你要的資料,不一定要正面爬
      真的只能爬的話,針對 可以試試看 driver.switchTo().frame(id or index) 跳進去 點完之後再 driver.switchTo().defaultContent() 或是 driver.switchTo().parentFrame() 出來,好像沒有其他方法@@
      希望有幫到你~ XDDD

  • @mcgogo1984
    @mcgogo1984 7 หลายเดือนก่อน

    我一直想要爬財經m平方的數據。之前好不容易有別的YTR介紹,結果卻收到財經m平方的警告信,雖然沒有違法,但是他覺得和平相處還是比較好,所以他還是下架該影片。而且他的code不知道為什麼也爬不到了。不知道財經m平方又改了什麼。
    另外,你的內容很有料,但是對初學者好難。希望會有更清楚的步驟版本。謝謝

    • @recode-0
      @recode-0  7 หลายเดือนก่อน

      對方網站可能有小改一些id 或class 吧
      畢竟他也知道對方怎麼爬的 就改掉了😅😅
      看一下執行的錯誤訊息,他是什麼東西找不到把他對應回去應該就會動了!
      站在工程師的立場,應該不會為了某爬蟲大改架構才是www

  • @user-jv4ji9qf8s
    @user-jv4ji9qf8s 5 หลายเดือนก่อน

    佬 你太厲害了

    • @recode-0
      @recode-0  5 หลายเดือนก่อน +1

      謝謝🥹

  • @kerhuangyu680
    @kerhuangyu680 23 ชั่วโมงที่ผ่านมา

    什麼時候會有captcha解析?

  • @NoelChang-ex4ng
    @NoelChang-ex4ng 8 หลายเดือนก่อน

    謝謝!若有講得更細的要開放會員制定我也想訂閱 🥹🥹大神!學到好多,收下我的膝蓋 😎

    • @recode-0
      @recode-0  8 หลายเดือนก่อน

      噢噢噢 謝謝支持🥺

  • @user-kd5iq3ej5f
    @user-kd5iq3ej5f 5 หลายเดือนก่อน

    如果可以介紹一下使用API的方式一定很棒

    • @recode-0
      @recode-0  5 หลายเดือนก่อน

      API 感覺能說的比較少QQ
      因為就是發 Request 去拿需要的資料回來 XD
      有看到相關的題材的話 ,我再搜集一下吧~~ 看能不能出個一部ww

  • @user-lf2xp8jo7g
    @user-lf2xp8jo7g 2 หลายเดือนก่อน +2

    大師!
    想請問6:53的那種一次修改多行的方法該如何使用
    希望多學一點小技巧

    • @ntitcsie
      @ntitcsie หลายเดือนก่อน

      卡一個 我也想知道

    • @recode-0
      @recode-0  หลายเดือนก่อน +1

      喔喔 這個就是vscode 的預設快捷鍵
      按住Shift+alt+滑鼠點
      他會一次focus 一整排

  • @tsait9538
    @tsait9538 หลายเดือนก่อน

    請問一下,你前面有提到cookie藏在電腦裡,那讓爬蟲讀取電腦裡的檔案可行嗎?

    • @recode-0
      @recode-0  หลายเดือนก่อน +1

      可 不過你要先解密才能用
      另外太久沒連的網站有可能會過期喔~

  • @agonglu7138
    @agonglu7138 หลายเดือนก่อน

    謝謝大大分享,學習很多,我遇到一個網站他是需要一個cookie,但是這個cookie還沒過期就會變,發現只要重整網頁十二次後cookie值就會變,像這種要如何知道他下一次的cookie值是什麼呢?

    • @recode-0
      @recode-0  หลายเดือนก่อน

      每個網站實作方式不一樣🥲
      如果沒加密的話啦,你可以去觀察他是什麼欄位
      啊,有時候網站只是用很爛的 base64編碼而已,你也可以試著解開來偷看他是什麼欄位在變
      如果知道規則就幫他裝好放回去,真的不行最暴力的就是每12次就重新送一次登入請求囉XD
      你可以從瀏覽器把curl資料拔出來,自己發request 夾帳號密碼過去給他,他就會給你新的cookie ,你再存下來就可以繼續多用12次了~

  • @user-zx5dy6ty6b
    @user-zx5dy6ty6b 19 วันที่ผ่านมา

    您好,我想詢問一下,用seleium 我的Chrome會說,目前被被自動軟體控制,以至於不能登入帳好,想請問大師有甚麼解嗎

    • @recode-0
      @recode-0  16 วันที่ผ่านมา

      我的話會試試看自己事先登入,然後把 cookie 拔出來交給 Selenium 連線的時候夾著,這樣應該可以略過登入步驟~?

  • @yungshenchen258
    @yungshenchen258 5 หลายเดือนก่อน +1

    可以補充一些連接API的教學嗎
    回覆

    • @recode-0
      @recode-0  5 หลายเดือนก่อน +1

      Hmm … 雖然每個網站都不太一樣
      不過其實就是發個 Request 拿需要的資料
      然後處理 json 或是 XML 之類的@@
      感覺好像還好@@
      我稍微留意一下還有什麼能講
      讓我考慮一下 XDD

  • @chengc8055
    @chengc8055 2 หลายเดือนก่อน

    请问一下,图片服务器的图片怎么爬,因为有防爬,目前我只能模拟手动下载,但效率不高也不方便操作

    • @recode-0
      @recode-0  หลายเดือนก่อน

      最簡單暴力的方式就是你怎麼看到那些圖片,你就寫程式模擬這個過程,自然也一定能看到圖片,那你就可以抓下來了
      有些網站防爬蟲做的很徹底,真的就會讓爬蟲很沒效率,慢到覺得不如付費好了XDDD
      如果複雜度太高我會選擇爬其他來源😂

  • @0.o593
    @0.o593 6 หลายเดือนก่อน

    想請問遇到cloudflare 怎麼過,用selenium 或request 都會被擋

    • @recode-0
      @recode-0  6 หลายเดือนก่อน +1

      雖然不知道你想爬什麼,不過試試看cfscrape 怎麼樣~?

    • @0.o593
      @0.o593 6 หลายเดือนก่อน

      @@recode-0 感謝,我來研究看看試試

  • @ayahuang8307
    @ayahuang8307 6 หลายเดือนก่อน

    跪求示範爬FB社團😭😭😭卡這個爬蟲卡了快兩年了🥲
    FB不知道用什麼巫術selenium爬抓不到貼文時間;又集Lazy Load、CSRF於一體,想用Request爬也卡到不行

    • @recode-0
      @recode-0  6 หลายเดือนก่อน +1

      Facebook 幾乎全部CSS ID都模組化了 真的是很難爬 😂😂
      這次可以爬下次可能又換了,所以我的話會建議爬他的架構,至少不會每幾次連線就換了
      舉例來說,像是稍微看一下會發現,第一個有7個class 的 div 是 Title ,那有同樣class 內容或是結構差不多的人可能都是標題,裡面就會有名字和貼文時間之類的
      一些建議啦~我也沒爬過,但光想想就不是很想爬他🤣

  • @terryterry8999
    @terryterry8999 5 หลายเดือนก่อน

    請收下我的膝蓋

    • @recode-0
      @recode-0  5 หลายเดือนก่อน

      感謝支持🥹

  • @jerrybinGG
    @jerrybinGG 4 หลายเดือนก่อน

    前陣子在寫爬BOOKING後台的爬蟲,結果卡在驗證步驟,而驗證步驟只接受電話驗證,哭阿~原本就是要做自動化,結果還是需要人為介入,胎死腹中,呵呵,原本還想讓電腦串接電話看看,嘗試讓電腦去接電話,但似乎需要AI、機器學習之類的東西,礙於資源不足且專業知識沒到位,好想完成它啊QQ

    • @recode-0
      @recode-0  4 หลายเดือนก่อน +2

      簡訊認證好像有個smsForwarder 可以試試看(?
      iOS 我想到的是好像有個推播到Mac 的功能,不知道能不能再寫個程式監聽有人沒有推播進來 之類的XD

  • @user-yt7zb6hz8g
    @user-yt7zb6hz8g 5 หลายเดือนก่อน

    要怎麼用selenium套用cookie?

    • @recode-0
      @recode-0  5 หลายเดือนก่อน

      Selenium 很方便,正常的點或輸入帳密送表單,他就會幫你記住 Cookie 資訊了,如果需要改的話,driver.add_cookie({"name": "key", "value": "value"}) 就能換成你要的值了

  • @a2414205
    @a2414205 หลายเดือนก่อน

    蝦皮 用request get方法 headers 全上了 還是403 有解嗎 要獲取商品資料的json

    • @recode-0
      @recode-0  16 วันที่ผ่านมา

      你的瀏覽器是看得到的嗎,如果可以應該不會這樣,可能有哪個欄位漏掉或是發出去的時候又被寫掉了?
      可以用 nc 聽個 port ,把 request 發給自己,檢查一下發出去的是不是對的,有沒有夾錯~?

    • @a2414205
      @a2414205 15 วันที่ผ่านมา +1

      @@recode-0 查了 必須JS逆向 才能拿到加密數據

  • @user-hg6wl3vz1g
    @user-hg6wl3vz1g 7 หลายเดือนก่อน

    可以访问成功 tiktok吗

    • @recode-0
      @recode-0  7 หลายเดือนก่อน

      可以吧0..0

  • @kerhuangyu680
    @kerhuangyu680 4 หลายเดือนก่อน

    很久沒更新了

    • @recode-0
      @recode-0  4 หลายเดือนก่อน

      確實😢

  • @Jerry-et5uh
    @Jerry-et5uh 27 วันที่ผ่านมา

    我想问一下图片网站的url找不到怎么办

    • @recode-0
      @recode-0  16 วันที่ผ่านมา

      找不到的話你的瀏覽器應該也看不到 QQ
      看得到但是 URL 連過去卻沒有的話,可能是直接連線會被他擋掉,可以試試看從 selenium 拔出來

  • @user-em1ck7pi5s
    @user-em1ck7pi5s 5 หลายเดือนก่อน

    那些赌博网站能弄吗

    • @recode-0
      @recode-0  5 หลายเดือนก่อน

      你能連到的話 一定行(O

  • @htchd0211
    @htchd0211 3 หลายเดือนก่อน

    👍