Hướng dẫn how do you remove http in python? - làm cách nào để xóa http trong python?

74

Mới! Lưu câu hỏi hoặc câu trả lời và sắp xếp nội dung yêu thích của bạn. Tìm hiểu thêm.
Learn more.

Tôi muốn xóa tất cả các URL bên trong một chuỗi (thay thế chúng bằng "") Tôi đã tìm kiếm xung quanh nhưng thực sự không thể tìm thấy thứ tôi muốn.

Example:

text1
text2
http://url.com/bla1/blah2/
text3
text4
http://url.com/bla2/blah2/
text5
text6
http://url.com/bla3/blah3/

Tôi muốn kết quả là:

text1
text2
text3
text4
text5
text6

hỏi ngày 4 tháng 7 năm 2012 lúc 15:30Jul 4, 2012 at 15:30

Hướng dẫn how do you remove http in python? - làm cách nào để xóa http trong python?

3

cách ngắn nhất

re.sub(r'http\S+', '', stringliteral)

Đã trả lời ngày 26 tháng 11 năm 2016 lúc 21:01Nov 26, 2016 at 21:01

Tolgayilmaztolgayilmaztolgayilmaz

3.7472 Huy hiệu vàng19 Huy hiệu bạc18 Huy hiệu đồng2 gold badges19 silver badges18 bronze badges

6

Kịch bản Python:

import re
text = re.sub(r'^https?:\/\/.*[\r\n]*', '', text, flags=re.MULTILINE)

Output:

text1
text2
text3
text4
text5
text6

Kiểm tra mã này ở đây.

Đã trả lời ngày 4 tháng 7 năm 2012 lúc 16:15Jul 4, 2012 at 16:15

MegaΩmegaΩmega

41.2K32 Huy hiệu vàng126 Huy hiệu bạc194 Huy hiệu đồng32 gold badges126 silver badges194 bronze badges

1

Điều này làm việc cho tôi:

import re
thestring = "text1\ntext2\nhttp://url.com/bla1/blah2/\ntext3\ntext4\nhttp://url.com/bla2/blah2/\ntext5\ntext6"

URLless_string = re.sub(r'\w+:\/{2}[\d\w-]+(\.[\d\w-]+)*(?:(?:\/[^\s/]*))*', '', thestring)
print URLless_string

Result:

text1
text2

text3
text4

text5
text6

Đã trả lời ngày 4 tháng 7 năm 2012 lúc 16:12Jul 4, 2012 at 16:12

Hướng dẫn how do you remove http in python? - làm cách nào để xóa http trong python?

TahatahaTaha

1.5122 Huy hiệu vàng18 Huy hiệu bạc24 Huy hiệu đồng2 gold badges18 silver badges24 bronze badges

Loại bỏ các liên kết/URL HTTP trộn lẫn trong bất kỳ văn bản nào:

import re
re.sub(r'''(?i)\b((?:https?://|www\d{0,3}[.]|[a-z0-9.\-]+[.][a-z]{2,4}/)(?:[^\s()<>]+|\(([^\s()<>]+|(\([^\s()<>]+\)))*\))+(?:\(([^\s()<>]+|(\([^\s()<>]+\)))*\)|[^\s`!()\[\]{};:'".,<>?«»“”‘’]))''', " ", text)

Đã trả lời ngày 26 tháng 4 năm 2018 lúc 6:48Apr 26, 2018 at 6:48

Hướng dẫn how do you remove http in python? - làm cách nào để xóa http trong python?

PranzellpranzellPranzell

2.08815 huy hiệu bạc21 Huy hiệu đồng15 silver badges21 bronze badges

2

Giải pháp này phục vụ cho HTTP, HTTPS và các ký tự đặc biệt loại URL bình thường khác:

import re
def remove_urls (vTEXT):
    vTEXT = re.sub(r'(https|http)?:\/\/(\w|\.|\/|\?|\=|\&|\%)*\b', '', vTEXT, flags=re.MULTILINE)
    return(vTEXT)


print( remove_urls("this is a test https://sdfs.sdfsdf.com/sdfsdf/sdfsdf/sd/sdfsdfs?bob=%20tree&jef=man lets see this too https://sdfsdf.fdf.com/sdf/f end"))

Đã trả lời ngày 21 tháng 7 năm 2016 lúc 8:05Jul 21, 2016 at 8:05

Lee Martinlee MartinLee Martin

Phim huy hiệu bạc 1711 Huy hiệu đồng1 silver badge3 bronze badges

3

Tôi không thể tìm thấy bất kỳ điều gì đã xử lý tình huống cụ thể của mình, đó là loại bỏ các URL ở giữa các tweet cũng có khoảng trắng ở giữa các URL nên tôi đã tự làm:

(https?:\/\/)(\s)*(www\.)?(\s)*((\w|\s)+\.)*([\w\-\s]+\/)*([\w\-]+)((\?)?[\w\s]*=\s*[\w\%&]*)*

Đây là một lời giải thích:

re.sub(r'http\S+', '', stringliteral)
5 khớp http: // hoặc https: //
re.sub(r'http\S+', '', stringliteral)
6 không gian trắng tùy chọn
re.sub(r'http\S+', '', stringliteral)
7 Tùy chọn khớp với www.
re.sub(r'http\S+', '', stringliteral)
6 Tùy chọn khớp với khoảng trắng
re.sub(r'http\S+', '', stringliteral)
9 khớp với 0 hoặc nhiều hơn một hoặc nhiều ký tự từ theo sau là khoảng thời gian
import re
text = re.sub(r'^https?:\/\/.*[\r\n]*', '', text, flags=re.MULTILINE)
0 khớp với 0 hoặc nhiều từ một hoặc nhiều từ (hoặc một dấu gạch ngang) theo sau là '\'
import re
text = re.sub(r'^https?:\/\/.*[\r\n]*', '', text, flags=re.MULTILINE)
1 bất kỳ đường dẫn còn lại ở cuối URL theo sau là kết thúc tùy chọn
import re
text = re.sub(r'^https?:\/\/.*[\r\n]*', '', text, flags=re.MULTILINE)
2 khớp với các thông số truy vấn kết thúc (ngay cả với không gian trắng, v.v.)
re.sub(r'http\S+', '', stringliteral)
5 matches http:// or https://
re.sub(r'http\S+', '', stringliteral)
6 optional whitespaces
re.sub(r'http\S+', '', stringliteral)
7 optionally matches www.
re.sub(r'http\S+', '', stringliteral)
6 optionally matches whitespaces
re.sub(r'http\S+', '', stringliteral)
9 matches 0 or more of one or more word characters followed by a period
import re
text = re.sub(r'^https?:\/\/.*[\r\n]*', '', text, flags=re.MULTILINE)
0 matches 0 or more of one or more words(or a dash or a space) followed by '\'
import re
text = re.sub(r'^https?:\/\/.*[\r\n]*', '', text, flags=re.MULTILINE)
1 any remaining path at the end of the url followed by an optional ending
import re
text = re.sub(r'^https?:\/\/.*[\r\n]*', '', text, flags=re.MULTILINE)
2 matches ending query params (even with white spaces,etc)

Kiểm tra điều này ở đây: https: //regex101.com/r/nmvgoo/8

Đã trả lời ngày 16 tháng 8 năm 2018 lúc 20:20Aug 16, 2018 at 20:20

Hướng dẫn how do you remove http in python? - làm cách nào để xóa http trong python?

3

Những gì bạn thực sự muốn làm là loại bỏ bất kỳ chuỗi nào bắt đầu bằng

import re
text = re.sub(r'^https?:\/\/.*[\r\n]*', '', text, flags=re.MULTILINE)
3 hoặc
import re
text = re.sub(r'^https?:\/\/.*[\r\n]*', '', text, flags=re.MULTILINE)
4 cộng với bất kỳ sự kết hợp nào của các ký tự không gian trắng. Đây là cách tôi sẽ giải quyết nó. Giải pháp của tôi rất giống với giải pháp của @tolgayilmaz

text1
text2
text3
text4
text5
text6
0

Và kết quả của việc chạy một trong hai mã ở trên là

text1
text2
text3
text4
text5
text6
1

Tôi thích cái thứ hai vì nó dễ đọc hơn.

Đã trả lời ngày 15 tháng 1 năm 2019 lúc 20:42Jan 15, 2019 at 20:42

Samuel Ndesamuel ndeSamuel Nde

2.4322 Huy hiệu vàng23 Huy hiệu bạc23 Huy hiệu Đồng2 gold badges23 silver badges23 bronze badges

4

Để xóa bất kỳ URL nào trong chuỗi trong Python, bạn có thể sử dụng chức năng Regex này:remove any URL within a string in Python, you can use this RegEx function :

text1
text2
text3
text4
text5
text6
2

Đã trả lời ngày 28 tháng 8 năm 2020 lúc 11:55Aug 28, 2020 at 11:55

Hướng dẫn how do you remove http in python? - làm cách nào để xóa http trong python?

1

Tôi biết điều này đã được trả lời và nó ngu ngốc muộn nhưng tôi nghĩ điều này nên ở đây. Đây là một regex phù hợp với bất kỳ loại url nào.

text1
text2
text3
text4
text5
text6
3

Nó có thể được sử dụng như

text1
text2
text3
text4
text5
text6
4

Đã trả lời ngày 13 tháng 3 năm 2018 lúc 13:39Mar 13, 2018 at 13:39

5

Bạn cũng có thể nhìn nó từ cách khác ...

text1
text2
text3
text4
text5
text6
5

Đã trả lời ngày 4 tháng 7 năm 2012 lúc 16:48Jul 4, 2012 at 16:48

Hướng dẫn how do you remove http in python? - làm cách nào để xóa http trong python?

Jon Clements ♦ Jon ClementsJon Clements

135K32 Huy hiệu vàng240 Huy hiệu bạc273 Huy hiệu Đồng32 gold badges240 silver badges273 bronze badges

Biểu thức chính quy sau đây trong Python hoạt động tốt để phát hiện (các) URL trong văn bản:Python works well for detecting URL(s) in the text:

text1
text2
text3
text4
text5
text6
6

Đầu ra::

text1
text2

text3
text4

text5
text6

Đã trả lời ngày 2 tháng 9 năm 2017 lúc 14:19Sep 2, 2017 at 14:19

Hướng dẫn how do you remove http in python? - làm cách nào để xóa http trong python?

2

text1
text2
text3
text4
text5
text6
8

Ngoài

text1
text2
text3
text4
text5
text6
9

Đã trả lời ngày 5 tháng 11 năm 2019 lúc 6:07Nov 5, 2019 at 6:07

1

Tôi nghĩ rằng mẫu Regex URL tổng quát nhất là mô hình này:

re.sub(r'http\S+', '', stringliteral)
0

Có một mô -đun nhỏ làm những gì bạn muốn:

re.sub(r'http\S+', '', stringliteral)
1
re.sub(r'http\S+', '', stringliteral)
2

Đã trả lời ngày 11 tháng 8 năm 2021 lúc 9:21Aug 11, 2021 at 9:21

Một đơn giản.* Với một cái nhìn tích cực phía sau nên làm công việc.

re.sub(r'http\S+', '', stringliteral)
3

Đã trả lời ngày 20 tháng 9 năm 2021 lúc 7:07Sep 20, 2021 at 7:07

TbhavnanitbhavnaniTBhavnani

6716 Huy hiệu bạc12 Huy hiệu đồng6 silver badges12 bronze badges

Tại sao không sử dụng cái này nó hoàn thành như vậy

re.sub(r'http\S+', '', stringliteral)
4

Hướng dẫn how do you remove http in python? - làm cách nào để xóa http trong python?

Fobersteiner

18,5K5 Huy hiệu vàng29 Huy hiệu bạc58 Huy hiệu Đồng5 gold badges29 silver badges58 bronze badges

Đã trả lời ngày 12 tháng 7 lúc 4:41Jul 12 at 4:41

0

Làm cách nào để loại bỏ một url trong python?

Hủy bỏ URL khỏi văn bản trong Python..
Sử dụng hàm re.sub () để xóa các URL khỏi văn bản trong Python ..
Sử dụng hàm re.findall () để xóa URL khỏi văn bản trong Python ..
Sử dụng hàm Re.Search () để xóa URL khỏi văn bản trong Python ..
Sử dụng lớp urllib.urlparse để xóa các URL khỏi văn bản trong Python ..

Làm cách nào để xóa URL khỏi chuỗi?

Để loại bỏ một siêu liên kết nhưng giữ văn bản, nhấp chuột phải vào siêu liên kết và nhấp vào Xóa Hiêu liên kết.Để loại bỏ hoàn toàn siêu liên kết, chọn nó và sau đó nhấn xóa.right-click the hyperlink and click Remove Hyperlink. To remove the hyperlink completely, select it and then press Delete.

Làm thế nào để bạn thay đổi URL trong Python?

Phương thức thay thế_urls () trong Python thay thế tất cả các URL trong một văn bản nhất định bằng chuỗi thay thế.replace_urls() method in Python replaces all the URLs in a given text with the replacement string.

Làm cách nào để loại bỏ một ký hiệu khỏi một chuỗi trong Python?

Xóa ký hiệu khỏi chuỗi bằng cách sử dụng thay thế () người ta có thể sử dụng str.replace () bên trong một vòng lặp để kiểm tra BAD_CHAR và sau đó thay thế nó bằng chuỗi trống do đó loại bỏ nó.use str. replace() inside a loop to check for a bad_char and then replace it with the empty string hence removing it.