【问题标题】:-Python- I can't get redirected link-Python- 我无法获得重定向链接
【发布时间】:2021-10-24 19:04:34
【问题描述】:

我想用 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)

【问题讨论】:

    标签: python-3.x web-scraping python-requests


    【解决方案1】:

    重定向链接网址隐藏在内容的 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
    

    【讨论】:

    • 成功了!谢谢:)
    • @LinuxAndPython 很高兴它为你工作!
    猜你喜欢
    • 1970-01-01
    • 2019-07-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-06-14
    • 2014-06-29
    • 2015-07-18
    • 1970-01-01
    相关资源
    最近更新 更多