我想用python获取随机scp信息,但它不给重定向链接。它打开一个空白页,上面写着"随机SCP"。
#!/usr/bin/env python
import requests
from bs4 import BeautifulSoup as bs
url = "https://scp-wiki.wikidot.com/random:random-scp"
r = requests.get(url, allow_redirects=True)
print(r.url)
重定向链接url隐藏在内容的JavaScript部分中。您可以通过将内容加载到soup
中,使用css选择器将其归零,并通过一点字符串操作提取最终答案来获得它:
soup = soup=bs(r.content,"html.parser")
target = soup.select_one('iframe[src*="redirect"]')
print(target.attrs['src'].split("#")[1])
输出(在本例中):
http://scp-wiki.wikidot.com/scp-3794