Python - แยก URL จากข้อความ
การแยก URL ทำได้จากไฟล์ข้อความโดยใช้นิพจน์ทั่วไป นิพจน์จะดึงข้อความทุกที่ที่ตรงกับรูปแบบ ใช้เฉพาะโมดูล re เพื่อจุดประสงค์นี้
ตัวอย่าง
เราสามารถนำไฟล์อินพุตที่มี URL บางส่วนและประมวลผลโดยใช้โปรแกรมต่อไปนี้เพื่อแยก URL findall()ฟังก์ชันใช้เพื่อค้นหาอินสแตนซ์ทั้งหมดที่ตรงกับนิพจน์ทั่วไป
ไฟล์ Inout
แสดงเป็นไฟล์อินพุตด้านล่าง ซึ่งประกอบด้วย teo URL
Now a days you can learn almost anything by just visiting http://www.google.com. But if you are completely new to computers or internet then first you need to leanr those fundamentals. Next
you can visit a good e-learning site like - https://www.tutorialspoint.com to learn further on a variety of subjects.
ตอนนี้เมื่อเรานำไฟล์อินพุตด้านบนและประมวลผลผ่านโปรแกรมต่อไปนี้เราจะได้ผลลัพธ์ที่ต้องการซึ่งจะให้เฉพาะ URL ที่แยกจากไฟล์
import re
with open("path\url_example.txt") as file:
for line in file:
urls = re.findall('https?://(?:[-\w.]|(?:%[\da-fA-F]{2}))+', line)
print(urls)
เมื่อเรารันโปรแกรมข้างต้นเราจะได้ผลลัพธ์ดังต่อไปนี้ -
['http://www.google.com.']
['https://www.tutorialspoint.com']