我编写了一段代码,用于访问网页并在该页面中搜索从检查元素到另一个网站的链接。访问该网站后,我需要从嵌入该网页的地图中获取地址的邮政编码。它在页面源代码上不可用,所以我猜它是动态加载的,我不能为此使用 BeautifulSoup。
为此我使用了 HTMLSession。我复制了 XPATH 来搜索标签,一切都很好。我得到了链接并能够连接到第一个网站。 问题是,当我尝试对嵌入在我登陆的页面上的地图执行相同操作时,我无法执行相同的 XPATH 搜索。当我尝试使用 print(zip_container.text) 打印它时,它只是返回一个空列表或说“NoneType 对象没有属性 .text”或其他内容。
我知道嵌入的地图必须动态加载,因此我不能直接使用BeautifulSoup。我究竟做错了什么? 我也不能也不想为此使用 Selenium。我知道 requests_html 是可能的,我只是不明白我哪里出了问题。
这是我编写的代码,模块已全部导入,并且第一个网页的代码由于不相关而未发布:
store_urls = 'https://www.miyazaki-recycle.com/recycling-station/14821/'
session = HTMLSession()
response = session.get(store_urls, timeout=60)
response.html.render(sleep=10)
zip_container = response.html.xpath('//*[@id="mapDiv"]/div/div[3]/div[3]/div/div/div/div/div[1]/div[2]', first=True)
print(zip_container)
我也尝试过使用 find 如下,但它也不起作用:
zip_container = response.html.find('div.address', first=True)
如果需要任何其他信息,请告诉我。 我对 python 也很陌生,所以请放轻松。
编辑:把它留给那些愚蠢的人来投票,根本不提供答案,甚至不提供建议。