我想從另一個串列中提取一個串列,該串列是一個 URL 串列。例如,
| index | URL |
| -------- | -------------------------------------------------- |
| 1 | 'http://www.exmaples.com/some.html/' |
| 2 | 'https://www.exmaples.com/some.jpg/ ' |
| 3 | 'mailto://[email protected]' |
| 4 | 'mailto://[email protected]' |
| 5 | 'http://www.exmaples.com/menu1/' |
| 6 | 'http://www.exmaples.com/menu2/' |
| 7 | 'http://www.exmaples.com/menu3/' |
| 8 | 'http://www.exmaples.com/menu4/' |
| 9 | 'http://www.exmaples.com/menu5/submenu1.html' |
| 10 | 'http://www.exmaples.com/menu6/submenu3.pdf' |
| 11 | 'http://www.exmaples.com/menu6/submenu4/list.png' |
我想洗掉包含以下內容的內容:
avoid_list =['mailto', '@', '.jpg', '.png', '.pdf']
例如,我使用了如下所示的串列理解串列。但有時它會忽略并給出一些包含避免的元素。
[url for url in urls for avoid in avoid_list if avoid not in url]
我的問題是是否有任何 python 庫用于處理 URL 并根據某些條件過濾它們。
感謝您提前考慮:)
uj5u.com熱心網友回復:
您可以將避免串列加入帶有|分隔符的字串(在這種情況下用作“OR”)并用于str.contains檢查每一行是否包含串列的任何元素。
out = df[~df['URL'].str.contains('|'.join(avoid_list))]
print(out
index URL
0 1 'http://www.exmaples.com/some.html/'
4 5 'http://www.exmaples.com/menu1/'
5 6 'http://www.exmaples.com/menu2/'
6 7 'http://www.exmaples.com/menu3/'
7 8 'http://www.exmaples.com/menu4/'
8 9 'http://www.exmaples.com/menu5/submenu1.html'
轉載請註明出處,本文鏈接:https://www.uj5u.com/net/517815.html
下一篇:我如何在新標簽中打開此鏈接?
