如何提取30秒后加载的重定向链接?

时间:2019-07-14 16:50:35

标签: python url xpath

当我单击网站的下载按钮时。它告诉等待30加载并重定向到google驱动器。我想直接获取链接(重定向链接)


https://www.engineerrefe.com/2019/05/protection-of-industrial-power.html

这是有下载按钮的网站。

下载按钮的链接位置。

https://www.engineerrefe.com/p/redirect.html??&&url=https://drive.google.com/file/d/1wIhS0QPuyEOWZrSnP0wtKHTWGCpbely

我尝试(.url)模块通过复制下载链接来获取重定向链接。

import requests
#Link Location of Download button
page_contents = requests.get('https://www.engineerrefe.com/p/redirect.html??&&url=_https://drive.google.com/file/d/1wIhS0QPuyEOWZrSnP0wtKHTWGCpbely_')
print(page_contents.url)
# It prints the same.

2 个答案:

答案 0 :(得分:1)

做到这一点的最佳方法是使用硒。该库直接支持以下链接,重定向等。

我不会提供有关如何使用此theres one here的完整教程。祝您好运,并记得在所有此类大型网络抓取工作中都使用硒。

编辑:

另一个很棒的图书馆令人抓狂!

答案 1 :(得分:0)

您说您有一组链接。如果所有链接的格式都与您给的示例相同,则假定链接位于名为links.txt的文件中,那么您可以使用此功能仅提取google驱动器链接:

import re

with open("links.txt", "r") as file:
    contents = file.read()

def getUrl():
    indexes = [x.start() for x in re.finditer("_", contents)]
    urloutput = ""

    for i in range(indexes[0], indexes[1]):
        urloutput += contents[i + 1]

    return(urloutput)

根据列表中url的格式,您将需要对其进行修改,以遍历url的每个实例并每次使用该函数。