Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/docker/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 从Tripadvisor网页中删除电子邮件地址_Python_Beautifulsoup_Python Requests_Tripadvisor - Fatal编程技术网

Python 从Tripadvisor网页中删除电子邮件地址

Python 从Tripadvisor网页中删除电子邮件地址,python,beautifulsoup,python-requests,tripadvisor,Python,Beautifulsoup,Python Requests,Tripadvisor,我正试图使用Python-BS4-requests从以下网页中获取电子邮件地址,但在源代码中无法访问该电子邮件地址 该电子邮件地址在我的邮件应用程序中打开,但我在页面源中找不到指向它的链接。 我知道这可以通过观察网络标签来实现,并提出与网站相同的帖子请求,但无法实现 提前谢谢 该电子邮件在页面上找到的Json变量中进行Base64编码 您可以使用此示例获取页面上的所有电子邮件: import re import json import base64 import requests from

我正试图使用Python-BS4-requests从以下网页中获取电子邮件地址,但在源代码中无法访问该电子邮件地址

该电子邮件地址在我的邮件应用程序中打开,但我在页面源中找不到指向它的链接。 我知道这可以通过观察网络标签来实现,并提出与网站相同的帖子请求,但无法实现


提前谢谢

该电子邮件在页面上找到的Json变量中进行Base64编码

您可以使用此示例获取页面上的所有电子邮件:

import re
import json
import base64
import requests
from bs4 import BeautifulSoup


url = 'https://www.tripadvisor.in/Attraction_Review-g189400-d2020955-Reviews-Chat_Tours-Athens_Attica.html'

html_data = requests.get(url).text
data = re.search(r'window\.__WEB_CONTEXT__=(\{.*?\});', html_data).group(1)
data = json.loads(data.replace('pageManifest', '"pageManifest"'))

def get_emails(val):
    if isinstance(val, dict):
        for k, v in val.items():
            if k == 'email':
                if v:
                    yield v
            else:
                yield from get_emails(v)
    elif isinstance(val, list):
        for v in val:
            yield from get_emails(v)

for email in get_emails(data):
    email = base64.b64decode(email).decode('utf-8')
    email = re.search(r'mailto:(.*)_', email).group(1)

    print(email)
印刷品:

chat@chatours.gr

非常感谢您这么快的帮助。!!嘿,你能帮我解决另一个问题吗,tripadviser上的两个页面似乎有相同的链接,但内容不同,如果你在右下角点击“查看雅典的所有旅行社”,它会引导你通过请求访问我想要访问的内容,我想知道,它是否也以编码形式存在于源代码中