Kiểm tra xem url có tồn tại python

Điều kiện tiên quyết. Khớp mẫu với Biểu thức chính quy Trong bài viết này, chúng ta sẽ cần chấp nhận một chuỗi và chúng ta cần kiểm tra xem chuỗi đó có chứa bất kỳ URL nào trong đó không. Nếu URL có trong chuỗi, chúng tôi sẽ cho biết URL đã được tìm thấy hay không và in URL tương ứng có trong chuỗi. Chúng ta sẽ sử dụng khái niệm Biểu thức chính quy của Python để giải quyết vấn đề

ví dụ

Input : string = 'My Profile: 
//auth.geeksforgeeks.org/user/Chinmoy%20Lenka/articles 
in the portal of //www.geeksforgeeks.org/'

Output : URLs :  ['//auth.geeksforgeeks.org/user/Chinmoy%20Lenka/articles',
'//www.geeksforgeeks.org/']

Input : string = 'I am a blogger at //geeksforgeeks.org'
Output : URL :  ['//geeksforgeeks.org']

Khuyến khích. Vui lòng thử cách tiếp cận của bạn trên {IDE} trước, trước khi chuyển sang giải pháp

Để tìm các URL trong một chuỗi nhất định, chúng tôi đã sử dụng hàm findall[] từ mô-đun biểu thức chính quy của Python. Điều này trả về tất cả các kết quả khớp mẫu không chồng chéo trong chuỗi, dưới dạng danh sách các chuỗi. Chuỗi được quét từ trái sang phải và kết quả khớp được trả về theo thứ tự tìm thấy.  

Trong bài viết này, chúng ta sẽ viết một đoạn script Python để kiểm tra xem trang đã cho có được tìm thấy trên máy chủ hay không. Chúng ta sẽ thấy các phương pháp khác nhau để làm điều tương tự

Phương pháp 1. Sử dụng Urllib

Urllib là gói cho phép bạn truy cập trang web bằng chương trình

Cài đặt

pip install urllib

Tiếp cận

  • Nhập mô-đun
  • Chuyển URL trong urllib. request[] đọc URL
  • Bây giờ hãy kiểm tra với urllib. lỗi chứa các ngoại lệ được đưa ra bởi urllib. yêu cầu

Thực hiện

Python3




Yeah !  found
1

Yeah !  found
2
Yeah !  found
3
Yeah !  found
4
Yeah !  found
5

Yeah !  found
2
Yeah !  found
0
Yeah !  found
4
Yeah !  found
2

 

Yeah !  found
3

Yeah !  found
4
Yeah !  found
5

Yeah !  found
6
Yeah !  found
7
Yeah !  found
8
Yeah !  found
9
pip install urllib
10
pip install urllib
11

Yeah !  found
6

pip install urllib
13

pip install urllib
14

pip install urllib
15

pip install urllib
16
pip install urllib
17

Yeah !  found
6
pip install urllib
19____210
Yeah !  found
11
Yeah !  found
12

Yeah !  found
6

pip install urllib
16
Yeah !  found
15

Yeah !  found
6
pip install urllib
19____210
Yeah !  found
19
Yeah !  found
12

 

Yeah !  found
11
Yeah !  found
5

Yeah !  found
6
pip install urllib
19____210
Yeah !  found
16
pip install urllib
11

đầu ra

Yeah !  found

Phương pháp 2. Sử dụng yêu cầu

Yêu cầu cho phép bạn gửi HTTP/1. 1 yêu cầu cực kỳ dễ dàng. Mô-đun này cũng không tích hợp sẵn với Python. Để cài đặt loại này, lệnh dưới đây trong thiết bị đầu cuối

Python là ngôn ngữ lập trình phổ biến cung cấp nhiều tính năng hữu ích. Đôi khi, bạn có thể cần kiểm tra xem URL có thể truy cập được hay không, kiểm tra trạng thái máy chủ, kiểm tra xem URL hình ảnh có hoạt động hay không, v.v. Python giúp dễ dàng nhanh chóng ping một URL và nhận mã phản hồi của nó để xác định xem URL đó có hoạt động hay không. Đây là tập lệnh python để kiểm tra trạng thái URL

Bạn có thể sử dụng mã này để kiểm tra xem một trang web có đang hoạt động hay không, nếu một liên kết bị hỏng hoặc nếu quyền truy cập vào URL bị từ chối


Tập lệnh Python để kiểm tra trạng thái URL

Python cung cấp nhiều gói cho mục đích này. Nhưng chúng ta sẽ xem cách thực hiện việc này bằng 3 gói phổ biến – urllib, request và httplib


1. Sử dụng urllib

urllib cung cấp hàm getcode[] để lấy mã phản hồi của một URL. Nếu URL lên, phản hồi sẽ là 200

Đây là một đoạn mã đơn giản để kiểm tra xem URL www. ví dụ. com đang hoạt động

Yeah !  found
8

Trong ví dụ trên, xin lưu ý, bạn cần chỉ định URL đầy đủ cùng với giao thức HTTP/HTTPS. Ngoài ra, hàm getcode[] sẽ trả về mã phản hồi của chỉ URL được chỉ định, không phải toàn bộ trang web. Nếu mã phản hồi là 200, điều đó chỉ có nghĩa là URL được chỉ định đang hoạt động. Nếu URL không tồn tại, nó sẽ ném URLError và không trả về mã phản hồi 404


2. Sử dụng yêu cầu

Yêu cầu là một thư viện python có sẵn trong python 2 & 3 và cung cấp nhiều tính năng và tính linh hoạt hơn nhiều thư viện khác, khi xử lý các yêu cầu

Trong trường hợp này, chúng tôi sử dụng yêu cầu. head[] để kết nối với URL và yêu cầu. phản ứng. status_code để lấy mã trạng thái của URL đã cho

Yeah !  found
9

Xin lưu ý, yêu cầu. head[] cũng không kiểm tra xem một URL nhất định có tồn tại hay không và chỉ đơn giản là đưa ra các yêu cầu. ngoại lệ. ConnectionError trong khi kết nối với URL


3. Sử dụng httplib

Giống như mô-đun yêu cầu, trước tiên, httplib thiết lập kết nối tới một URL nhất định bằng hàm HTTPConnection[], tạo yêu cầu bằng hàm request[] và nhận phản hồi bằng hàm getresponse[]. Đây là một ví dụ để lấy mã phản hồi của một URL nhất định bằng cách sử dụng mô-đun httplib

Yeah !  found
0

Không giống như trong urllib và mô-đun yêu cầu, bạn không cần đề cập đến giao thức trong URL của mình. Bạn chỉ cần đề cập đến phiên bản URL có www hoặc không có www để kiểm tra trạng thái của nó. Xin lưu ý, httplib sẽ trả về mã phản hồi là 200, ngay cả khi máy chủ phản hồi với phản hồi cấm truy cập 403

Trong bài viết này, chúng ta đã học cách kiểm tra trạng thái URL trong Python. Bạn có thể sử dụng chúng để kiểm tra xem URL hình ảnh có hoạt động hay không, nếu URL của tệp tải xuống vẫn hoạt động và chạy. Bạn cũng có thể sử dụng nó trong một vòng lặp để kiểm tra xem nhiều trạng thái URL

Làm cách nào để kiểm tra xem một URL có tồn tại trong Python không?

Phương pháp 1. Sử dụng Urllib. .
Nhập mô-đun
Chuyển URL trong urllib. request[] đọc URL
Bây giờ hãy kiểm tra với urllib. lỗi chứa các ngoại lệ được đưa ra bởi urllib. yêu cầu

Làm cách nào để nhận phản hồi HTTP bằng Python?

Phản hồi. .
yêu cầu nhập khẩu
phản ứng = yêu cầu. nhận ["http. //www. Google. com"]
print["Mã phản hồi. ", phản ứng. status_code]
print["Phản hồi được định dạng dưới dạng văn bản. ",phản ứng. .
print["Phản hồi được định dạng theo byte. ",phản ứng. .
print["Tiêu đề phản hồi. ",phản ứng

Chủ Đề