我正在尝试从该网站提取联系人信息,但通过查看“检查页面”,我发现所有电子邮件地址都被隐藏,并且在尝试使用带有请求和BeautifulSoup
库的 Python 3.8 脚本抓取这些地址时,出现错误消息:
此电子邮件地址已受到防止垃圾邮件机器人的保护。您需要启用 JavaScript 才能查看它。
我尝试使用 Python 安装 selenium webdriver,但在安装过程中出现错误。
我的问题是:
- 如何提取受此类保护的电子邮件?
- 这样做是否需要“json”?
- 如何在 Windows 10 x64 上的 Python 3.8 中安装 selenium webdriver?
这是到目前为止尝试的代码:
import requests
from bs4 import BeautifulSoup
import re
url = "https://www.apdt.com.au/trainers-directory/trainers-directory.html"
r = requests.get(url)
soup = BeautifulSoup(r.content,"html.parser")
g_data = soup.findAll("div",{"class":"spEntryContainer"})[0].findAll("div",{"class":"col-sm-6"})
website = g_data[2].findAll("div",{"class":"spClassViewUrl"})
weblink = website[0].find('a').get('href')
r2 = requests.get(weblink)
domain = weblink.split("://")[1]
soup2 = BeautifulSoup(r2.text,"lxml")
print(soup2.prettify())
links = soup2.find_all("a",href=re.compile('.*@'+domain.replace("/","")))
print(links)`