如何解决抓取网站以获取GPS位置| Python
在我的python项目中,我想获取我的gps位置。 因此,我考虑过分析一个可以提供以下信息的网站: https://www.where-am-i.net/很完美! 所以我写了以下脚本来解析经度:
from bs4 import BeautifulSoup
import requests
#website = "https://schlechtewitze.com/kurze-witze"
website = "https://www.where-am-i.net/"
source = requests.get(website).text
soup = BeautifulSoup(source,'lxml')
for div in soup.find_all('div',class_ = "location"):
summary = div.p.text
print(summary)
print()
几乎可以使用,但是几乎可以使用:它返回:我的位置是:0.0、0.0 如您所见,它返回的不是真实位置,因为我的计算机(Windows 10)阻止了位置请求。例如,当我在浏览器中打开它时:
只有在单击允许(德语为 Zulassen )以获取我的计算机位置的网站后,该位置才会显示。
但是在脚本中我无法“单击此按钮”。
问题结果: 我如何允许网站通过脚本获取我的位置(漂亮的汤,要求)?
(我不介意是否有其他解决方案(没有bs4)来获取我的GPS位置)
解决方法
您可以改用 geocoder
简单地做
import geocoder
g = geocoder.ip('me')
print(g.latlng)
,
正如MukundKulkarni所提到的,该教程使用Selenium解析网站: How I Understood: Getting accurate current geolocation using Python Web-scraping and Selenium
显然,他们不必先允许位置跟踪。我将使用Selenium进行进一步的网页抓取。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。