Cách sử dụng proxy với mô-đun yêu cầu trong Python

Hướng dẫn , Cách thực hiện , Proxy ,16-03-20225 phút đọc

Mỗi máy tính đều có một địa chỉ Giao thức Internet (IP) duy nhất để xác định máy tính và vị trí địa lý của máy tính đó khi được kết nối với Internet. Máy tính của bạn sẽ gửi yêu cầu bất cứ khi nào cần bất kỳ thông tin nào từ Internet. Yêu cầu được gửi đến máy tính mục tiêu để kiểm tra loại thông tin được yêu cầu. Mục tiêu

Mỗi máy tính đều có một địa chỉ Giao thức Internet (IP) duy nhất để xác định máy tính và vị trí địa lý của máy khi được kết nối với Internet. Máy tính của bạn sẽ gửi yêu cầu bất cứ khi nào cần bất kỳ thông tin nào từ Internet. Yêu cầu được gửi đến máy tính mục tiêu để kiểm tra loại thông tin được yêu cầu. Máy tính mục tiêu sẽ gửi thông tin trở lại nếu được phép cung cấp thông tin đó cho địa chỉ IP của chúng ta. Đôi khi, máy tính muốn lấy thông tin từ Internet mà không bị nhận dạng. Thông tin đó thường bị chặn, nhưng chúng ta có thể lấy thông tin bằng cách sử dụng proxy đóng vai trò trung gian giữa máy khách và máy chủ.

Mỗi máy chủ proxy đều có địa chỉ IP riêng, vì vậy khi người dùng yêu cầu thông qua proxy để truy cập một trang web, trang web đó sẽ gửi dữ liệu đến IP của máy chủ proxy để chuyển tiếp dữ liệu đó đến người dùng.

  • Proxy ẩn danh tính của trình thu thập dữ liệu web và làm cho lưu lượng truy cập của chúng trông giống như lưu lượng truy cập của người dùng thông thường.
  • Proxy cung cấp tính năng bảo mật bổ sung cho trang web và cân bằng lưu lượng truy cập internet.
  • Proxy bảo vệ dữ liệu của người dùng web hoặc giúp truy cập các trang web bị chặn bởi cơ chế kiểm duyệt của quốc gia.

Sử dụng Proxy với Module Requests trong Python

Để sử dụng proxy với các yêu cầu Python, bạn cần làm theo các bước dưới đây.

Yêu cầu nhập khẩu

Nhập gói yêu cầu là một thư viện HTTP đơn giản. Bạn có thể dễ dàng gửi yêu cầu thông qua gói này mà không cần thêm chuỗi truy vấn thủ công vào URL của mình. Bạn có thể nhập yêu cầu bằng lệnh bên dưới.

yêu cầu nhập khẩu

Tạo một từ điển

Bạn cần tạo một từ điển proxy xác định kết nối HTTP và HTTPS. Bạn có thể đặt bất kỳ tên nào cho biến từ điển như "proxies" để ánh xạ giao thức tới URL proxy. Ngoài ra, bạn phải đặt biến URL thành trang web mà bạn phải thu thập dữ liệu.

proxies = {
  "http":'http://203.190.46.62:8080',
  "https":'https://111.68.26.237:8080'
}
url = 'https://httpbin.org/ip'

Ở đây từ điển định nghĩa URL của proxy cho hai giao thức riêng biệt là HTTP và HTTPS.

Tạo một biến phản hồi

Bạn phải tạo một biến phản hồi sử dụng bất kỳ phương thức yêu cầu nào. Phương thức này có hai đối số:

  • URL mà bạn đã tạo
  • Từ điển bạn đã định nghĩa
phản hồi = yêu cầu. lấy (url,proxies = proxy) in (response.json())

Kết quả đầu ra như sau:

Bạn cũng có thể sử dụng mô-đun yêu cầu trong Python để xoay vòng địa chỉ IP như hiển thị bên dưới.

Bạn phải nhập mô-đun yêu cầu bằng cách sử dụng lệnh bên dưới.

yêu cầu nhập khẩu

Tạo hàm sending_request

Bạn phải tạo một hàm sending_request và ưu tiên sử dụng proxy http vì hầu hết các proxy miễn phí không sử dụng giao thức https. Chúng tôi đã sử dụng khối try-except vì hầu hết các proxy miễn phí không hoạt động.

def sending_request(session, proxy):
    try:
        response = session.get('http://httpbin.org/ip', proxies={'http': f"http://{proxy}"})
        print(response.json())
    except:
        pass

Đọc proxy_txt

Bạn phải đọc tệp list_proxies.txt chứa danh sách proxy miễn phí và lưu nó vào biến có tên là proxies.

nếu __name__ == "__main__" : với open ( 'list_proxies.txt' , 'r' )  tệp : proxies = tệp .readlines()

Tạo phiên

Bạn phải tạo một phiên từ mô-đun yêu cầu và làm theo các bước dưới đây.

  • Lặp qua proxy
  • Truyền proxy và phiên cho hàm sending_request
với requests.Session() như phiên: cho proxy trong proxy: sending_request(session, proxy)

Bạn sẽ nhận được danh sách các proxy như hiển thị bên dưới.

Đây là một số proxy và danh sách còn dài với nhiều proxy khác nữa, nhưng không phải tất cả chúng đều hoạt động.

Cần có Proxy

Mọi doanh nghiệp cần biết năm lý do quan trọng để sử dụng proxy được đề cập dưới đây.

Thực hiện các nhiệm vụ nhạy cảm một cách ẩn danh

Proxy nổi tiếng với khả năng ẩn danh lưu lượng truy cập web. Nhưng hầu hết mọi người không hiểu được tầm quan trọng của chúng trong ngành kinh doanh. Máy chủ proxy cho phép các nhân viên an ninh và phóng viên bảo vệ bản thân, công ty, nguồn, khách hàng và đối tác.

Bạn cũng có thể sử dụng proxy để bảo vệ hoạt động phát triển và nghiên cứu hiện tại cũng như các hoạt động khác của công ty. Giả sử công ty của bạn sử dụng proxy và một gián điệp tiềm năng để theo dõi lưu lượng truy cập web nhằm xác định doanh nghiệp của bạn đang phát triển những gì. Trong trường hợp đó, công ty sẽ không thể dễ dàng theo dõi nhân viên của bạn.

Cải thiện an ninh doanh nghiệp và tổ chức

Bạn biết rằng vi phạm dữ liệu gây tốn kém cả về mặt hình ảnh công chúng và tổn thất tiền bạc. Vì vậy, các công ty lo lắng về tin tặc. Nhưng proxy có thể giúp bạn vì chúng làm giảm nguy cơ vi phạm dữ liệu. Chúng thêm một lớp bảo mật bổ sung giữa máy chủ của bạn và lưu lượng truy cập bên ngoài. Máy chủ proxy cũng hoạt động như một bộ đệm khi chúng đối mặt với internet và chuyển tiếp các yêu cầu từ máy tính bên ngoài mạng.

Nếu tin tặc có quyền truy cập vào máy chủ proxy của bạn, chúng vẫn gặp khó khăn khi tiếp cận máy chủ chạy phần mềm web nơi lưu trữ dữ liệu.

Kiểm soát việc sử dụng Internet của nhân viên

Bạn biết rằng vi phạm dữ liệu gây tốn kém cả về mặt hình ảnh công chúng và tổn thất tiền bạc. Vì vậy, các công ty lo lắng về tin tặc. Nhưng proxy có thể giúp bạn vì chúng làm giảm nguy cơ vi phạm dữ liệu. Chúng thêm một lớp bảo mật bổ sung giữa máy chủ của bạn và lưu lượng truy cập bên ngoài. Máy chủ proxy cũng hoạt động như một bộ đệm khi chúng đối mặt với internet và chuyển tiếp các yêu cầu từ máy tính bên ngoài mạng.

Nếu tin tặc có quyền truy cập vào máy chủ proxy của bạn, chúng vẫn gặp khó khăn khi tiếp cận máy chủ chạy phần mềm web nơi lưu trữ dữ liệu.

Tiết kiệm băng thông và đạt được tốc độ nhanh hơn

Một số người cho rằng máy chủ proxy làm chậm tốc độ internet do khối lượng công việc lớn mà chúng thực hiện ở chế độ nền. Nhưng điều đó không phải lúc nào cũng đúng. Máy chủ proxy có thể được sử dụng để tiết kiệm băng thông và tăng tốc độ bằng cách:

  • Lưu trữ các trang web và tệp được nhiều người dùng truy cập
  • Nén lưu lượng truy cập
  • Xóa quảng cáo khỏi các trang web

Nên sử dụng Proxy nào?

Bạn có thể nghĩ rằng chỉ có loại proxy duy nhất mang lại mọi lợi ích cho doanh nghiệp, chẳng hạn như:

  • Ngăn chặn vi phạm dữ liệu
  • Thiết lập giá cả cạnh tranh
  • Thu thập dữ liệu có giá trị trên phương tiện truyền thông xã hội
  • Xây dựng chiến lược SEO hiệu quả

Trên thực tế, có nhiều loại proxy khác nhau và việc sử dụng loại proxy nào phụ thuộc vào yêu cầu hoặc trường hợp sử dụng của bạn.

Dưới đây là các loại proxy phổ biến nhất.

Proxy trung tâm dữ liệu

Proxy trung tâm dữ liệu là proxy phổ biến nhất được các doanh nghiệp trên toàn thế giới sử dụng. Các trung tâm dữ liệu tạo ra và quản lý các proxy này. Bạn có thể sử dụng các proxy này nếu bạn phải cải thiện tính bảo mật của hệ thống vì chúng rẻ và dễ mua. Nhưng một số trang web cấm sử dụng chúng vì chúng liên kết chúng với hoạt động giống như bot.

Proxy dân dụng

Proxy dân dụng được liên kết với nơi cư trú thực tế và sử dụng địa chỉ IP của những người thực tế do Nhà cung cấp dịch vụ Internet (ISP) cung cấp. Khi bạn sử dụng chúng để kết nối đến một trang web, bạn trông giống như một người dùng bình thường. Do đó, bạn ít có khả năng bị phát hiện và bị cấm. Bạn có thể thu thập một lượng lớn dữ liệu web bằng proxy dân dụng và đạt được tính ẩn danh và bảo mật được cải thiện.

Phần kết luận

Cho đến nay, chúng ta đã thảo luận rằng proxy hoạt động như một rơle giữa máy khách và máy chủ. Bất cứ khi nào bạn yêu cầu thông tin, máy tính của bạn sẽ gửi yêu cầu này đến proxy, sau đó proxy sẽ gửi thông tin đến máy tính mục tiêu bằng một địa chỉ IP khác. Do đó, địa chỉ IP của bạn vẫn được bảo mật. Hơn nữa, bạn có thể sử dụng proxy với mô-đun yêu cầu trong Python và thực hiện nhiều hành động khác nhau tùy theo nhu cầu của bạn. Nếu bạn cần một IP tĩnh với tốc độ của proxy trung tâm dữ liệu và tính ẩn danh cao của proxy dân dụng , thì proxy tĩnh là giải pháp phù hợp vì địa chỉ IP không thay đổi với mỗi yêu cầu mới. Ngược lại, proxy xoay vòng mang lại lợi ích trong việc thử nghiệm và thu thập dữ liệu.