按 python 中的位置访问网站
Access web site by location in python
由于服务器位置的原因,一些网站在初学者中有 pt.
、en.
或在结尾有 .br
、.it
。
当我使用 python 的库作为函数时 urlopen
我必须传递网站的完整地址字符串,包括服务器位置的终止字符串(对于国际服务器) .
一些国际网站有每个国家的服务。有什么方法可以 python 让这对用户透明? (添加终止或起始字符串)因为某些网页不会以自动方式重定向到本地邻近服务器。
If you try to access google.com and google decides to forward you
automatically to google.se (for example), there's nothing the client
can do about it - whether that client is a human or a python script.
That is controlled by the webserver, not the client.
Danielle 在评论中所说的并不完全正确,当客户端访问网页 "google.com" 时,站点主机注意到您的 ip 位置并发回信号告诉浏览器将当前站点重定向到 "google.se"(以 Danielle 的示例为例)使网站与您的 ip 位置相匹配。但是,您可以避免重定向。至于问题,这里有一个使用 python Requests 库的简单演示。将 allow_redirects
设置为 False
.
import requests
r = requests.get('https://www.google.com')
print(r.url)
# 'https://www.google.ca/?gfe_rd=cr&dcr=0&ei=mpewWZGdGePs8we597n4Dw'
# requests automatically followed the redirect link to google.ca
r = requests.get('https://www.google.com', allow_redirects=False)
print(r.url)
# 'https://www.google.com/'
# here it says at google.com
您的问题不够明确,无法提供更详尽的答案。但我希望我的例子对你有所帮助。
由于服务器位置的原因,一些网站在初学者中有 pt.
、en.
或在结尾有 .br
、.it
。
当我使用 python 的库作为函数时 urlopen
我必须传递网站的完整地址字符串,包括服务器位置的终止字符串(对于国际服务器) .
一些国际网站有每个国家的服务。有什么方法可以 python 让这对用户透明? (添加终止或起始字符串)因为某些网页不会以自动方式重定向到本地邻近服务器。
If you try to access google.com and google decides to forward you automatically to google.se (for example), there's nothing the client can do about it - whether that client is a human or a python script. That is controlled by the webserver, not the client.
Danielle 在评论中所说的并不完全正确,当客户端访问网页 "google.com" 时,站点主机注意到您的 ip 位置并发回信号告诉浏览器将当前站点重定向到 "google.se"(以 Danielle 的示例为例)使网站与您的 ip 位置相匹配。但是,您可以避免重定向。至于问题,这里有一个使用 python Requests 库的简单演示。将 allow_redirects
设置为 False
.
import requests
r = requests.get('https://www.google.com')
print(r.url)
# 'https://www.google.ca/?gfe_rd=cr&dcr=0&ei=mpewWZGdGePs8we597n4Dw'
# requests automatically followed the redirect link to google.ca
r = requests.get('https://www.google.com', allow_redirects=False)
print(r.url)
# 'https://www.google.com/'
# here it says at google.com
您的问题不够明确,无法提供更详尽的答案。但我希望我的例子对你有所帮助。