提问人:Amit Sarussi 提问时间:6/16/2023 最后编辑:InSyncAmit Sarussi 更新时间:6/17/2023 访问量:45
如何检索维基百科页面的最终重定向链接?
How can I retrieve the final redirect link of a Wikipedia page?
问:
我正在尝试编写一个 Python 脚本来检索维基百科页面的最终重定向链接。例如,在访问 “” 时,它应该返回 “”。http://en.wikipedia.org/wiki/Zzzzzz
https://en.wikipedia.org/wiki/Z_(joke_line)
我有以下代码,可用于获取任何链接的重定向,也适用于 YouTube URL 缩短器,但它似乎不适用于维基百科链接:
import requests
def get_final_url(url):
response = requests.get(url, allow_redirects=False)
if response.status_code in (300, 301, 302, 303, 307, 308):
return response.headers['Location']
else:
return None
initial_url = "http://en.wikipedia.org/wiki/Zzzzzz" # Replace with your URL
final_url = get_final_url(initial_url)
print("Final URL:", final_url)
http://en.wikipedia.org/wiki/Zzzzzz -> http://en.wikipedia.org/wiki/Zzzzzz
https://youtu.be/nMFv8YPOQdY -> https://www.youtube.com/watch?v=nMFv8YPOQdY&feature=youtu.be
答:
0赞
Amit Sarussi
6/17/2023
#1
以下是最终对我有用的东西:
import requests, json
def get_final_url(name):
url = f'https://en.wikipedia.org/w/api.php?action=query&titles={name}&redirects&format=json'
response = requests.get(url)
return json.loads(response.text)["query"]["redirects"][0]["to"]
initial_url = "Zzzzzz" # Replace with your URL
final_url = get_final_url(initial_url)
print(final_url)
评论