如何使用python爬蟲直接返回客戶端IP?

w39發表於2021-09-11

如何使用python爬蟲直接返回客戶端IP?

一直跟大家說在學習python過程中,最重要的章節是爬蟲,而爬蟲裡最重要的依託就是代理嗎,不是一定有爬蟲,就需要代理的,一般有有無代理兩種情況,但是大家如果想要獲取到IP,那就需要理清楚思路,比如我們在有代理或者沒有代理的情況下要怎麼去執行,好了,帶著已經提供給大家的思路,繼續往下看內容吧。

獲取流程

先獲取 X-Real-IP

如果獲取不到 X-Real-IP,透過 X-Forwarded-For 取

如果再取不到,就直接取 remote_addr

測試指令碼

from flask import Flask
from flask import request
 
app = Flask(__name__)
 
@app.route('/')
def ip():
    headers = request.headers
    ip = headers["X-Real-Ip"]
    if ip == "" and len(headers["X-Forwarded-For"]) > 0:
        ip = headers["X-Forwarded-For"][0]
    if ip == "":
        ip = request.remote_addr
    return ip
 
 
if __name__ == "__main__":
app.run(host="0.0.0.0", port=8080)

好啦, 上述就能看到已經返回出來客戶IP,對了,大家在正式開始執行程式碼之前,得先安裝 flask,就可以執行指令碼測試了~更多學習內容,盡在。

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/854/viewspace-2832136/,如需轉載,請註明出處,否則將追究法律責任。

相關文章