Я написал скрипт на python, используя regular expression
для получения адреса электронной почты с определенных веб-сайтов.Я использовал селен, так как немногие сайты являются динамическими.Тем не менее, мой сценарий работает нормально, пока на этих страницах нет таких расширений, похожих на электронную почту, как в himalayan-institute-logo@2x.png
.
Как можно исключить расширения, заканчивающиеся .png
или .jpg
при получении писем?
Шаблон регулярного выражения, который я использовал:
[a-zA-Z0-9_.+-]+@[a-zA-Z0-9-]+\.[a-zA-Z0-9-.]+
Скрипт, который я пытаюсь использовать:
import re
from selenium import webdriver
URLS = (
'https://www.himalayaninstitute.org/about/',
'http://www.innovaprint.com.sg/',
'http://www.cityscape.com.sg/?page_id=37',
'http://www.yogaville.org',
)
def get_email(driver,link):
driver.get(link)
email = re.findall(r'[a-zA-Z0-9_.+-]+@[a-zA-Z0-9-]+\.[a-zA-Z0-9-.]+',driver.page_source)
if email:
print(link,email[0])
else:
print(link)
if __name__ == '__main__':
chromeOptions = webdriver.ChromeOptions()
chromeOptions.add_argument("--headless")
driver = webdriver.Chrome(chrome_options=chromeOptions)
for url in URLS:
get_email(driver,url)
driver.quit()
Вывод, который я имею:
https://www.himalayaninstitute.org/about/ himalayan-institute-logo@2x.png
http://www.innovaprint.com.sg/ info@innovacoms.com
http://www.cityscape.com.sg/?page_id=37 info@cityscape.com.sg
http://www.yogaville.org Yantra-@500.png