iT邦幫忙

0

爬蟲requests 與curl 哪一個比較容易被擋?

  • 分享至 

  • xImage

有前輩跟我說curl比較不會被擋,因為他比較像模拟瀏覽器去存取網站,
聽說某些網站會因為cookies而擋,requests 會自動處理 cookies,這意味著每次請求都會攜帶先前取得的 cookies。

但我想再確認一下這些觀念是否正確,想再請教一下各位

1.對於爬蟲requests 與curl 哪一個比較容易被擋?
2.主要原因是什麼?
3.哪些網站有擋的機會可以給我練習或參考?

看更多先前的討論...收起先前的討論...
是 curl 比較容易被擋吧?
alantse iT邦新手 5 級 ‧ 2024-01-10 09:57:58 檢舉
請問原因是?
request 預設會自帶一些 header
curl 不會
單就你的問題“requests 與curl 哪一個比較容易被擋”
不延伸討論或是預設反爬蟲到哪(我覺得討論不完,一下要檢查什麼,要往裡面加什麼,沒完沒了
那就是有 header 相較沒 header 比較不容易被擋
alantse iT邦新手 5 級 ‧ 2024-01-10 17:19:48 檢舉
喔喔了解,所以兩者都全手動方式設定,本質上做的事情是一樣的? 從網頁端看這個請求都是一樣的資訊?
Peter iT邦新手 4 級 ‧ 2024-01-11 08:51:09 檢舉
其實有無header本身就已經涉及到反爬的範疇了,使用requests 或curl不是問題的關鍵,關鍵在於你的行為是否觸發反爬機制,你可以試著去爬591或是淘寶就知道了。
sam0407 iT邦大師 1 級 ‧ 2024-01-11 08:53:11 檢舉
我是覺得看存取的頻率吧?
不管是curl或request,存取頻率過高肯定不會是人在操作~~
打雜工 iT邦研究生 1 級 ‧ 2024-01-11 14:14:59 檢舉
看你操作的細膩程度,爬蟲requests 與curl我的經驗都有可能被擋,不同人用結果會不一樣,至於哪個機率比較高?個人覺得看你操作到什麼程度,我都是以人為的操作角度去思考,犧牲一些效率,被擋機率比較小一些
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中
4
Ray
iT邦大神 1 級 ‧ 2024-01-10 10:36:35
最佳解答

誰說 cURL 不能帶 Cookie 的?
curl 指令如何使用 cookie

url / Docs / Protocols / HTTP Cookies

還有, 現在的防爬技術, 已經不單純只是用 Cookie 來做判別, 可以在背景加入很多偵測機器爬蟲的動態判斷, 你在爬的過程中, 只要顯露出機器人的行為特徵, 隨時都會被阻斷.

結論是: 不管用哪一種, 只要是爬蟲程式, 都有機會被擋, 端看雙方技術的高低拚場...

samantha23
iT邦見習生 ‧ 2024-01-11 02:32:36
【**此則訊息已被站方移除**】
2
海綿寶寶
iT邦大神 1 級 ‧ 2024-01-11 21:20:45

1.對於爬蟲requests 與curl 哪一個比較容易被擋?

爬蟲requests 與curl都一樣(對網站而言)

2.主要原因是什麼?

爬蟲requests 與curl都一樣(對網站而言)

3.哪些網站有擋的機會可以給我練習或參考?

https://ithelp.ithome.com.tw

0
lillian24
iT邦見習生 ‧ 2024-01-15 02:52:12

To answer your question "Is there any way they can block CURL requests?": Yes, in fact one may detect a cURL request by reading the User-Agent header.

0
SunM0on
iT邦新手 5 級 ‧ 2024-01-15 11:58:35

具體要看爬取的網站限制
python自帶的User-agent不額外做處理隨便就過掉了

我要發表回答

立即登入回答