Python 拆下';mailto:';从selenium get_属性(';href';)
我正在抓取一个站点,并且能够下拉一个email href属性,但是所有的电子邮件都包含mailto:标记。例如,我希望电子邮件发送至:john@gmail.com只是john@gmail.com. 我搜索了堆栈,找到了几个正则表达式解决方案,但无法实现它们。在Python 3.6中,导入将保持灰色。现在看来,它必须是一个默认库,但它不起作用。我也尝试过修改XPATH,但不清楚如何呈现XPATH,因为Selenium显然不允许这样做 这是我的密码:Python 拆下';mailto:';从selenium get_属性(';href';),python,selenium,parsing,mailto,Python,Selenium,Parsing,Mailto,我正在抓取一个站点,并且能够下拉一个email href属性,但是所有的电子邮件都包含mailto:标记。例如,我希望电子邮件发送至:john@gmail.com只是john@gmail.com. 我搜索了堆栈,找到了几个正则表达式解决方案,但无法实现它们。在Python 3.6中,导入将保持灰色。现在看来,它必须是一个默认库,但它不起作用。我也尝试过修改XPATH,但不清楚如何呈现XPATH,因为Selenium显然不允许这样做 这是我的密码: try: element = "//di
try:
element = "//div[@class='business-buttons']/a[1]"
email_el = driver.find_element(By.XPATH, element)
email = email_el.get_attribute("href")
except NoSuchElementException:
print("Handled NoSuchElementException no email")
pass
您可以尝试以下方法:
如果您有一个已删除电子邮件的列表,您可以在循环中使用.replace()
:
email_list = ['mailto:john@gmail.com','mailto:john2@gmail.com','mailto:john3@gmail.com']
for item in email_list:
item = item.replace("mailto:", "")
print(item)
输出:
john@gmail.com
john2@gmail.com
john3@gmail.com
您可以尝试以下方法:
如果您有一个已删除电子邮件的列表,您可以在循环中使用.replace()
:
email_list = ['mailto:john@gmail.com','mailto:john2@gmail.com','mailto:john3@gmail.com']
for item in email_list:
item = item.replace("mailto:", "")
print(item)
输出:
john@gmail.com
john2@gmail.com
john3@gmail.com
@德班詹布非常感谢您的评论和投票!我很感激。@DebanjanB非常感谢您的评论和投票!我很感激。