Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/redis/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python BeautifulSoup:获取网页上的所有链接如何在没有selenium的情况下浏览这些链接?_Python_Beautifulsoup - Fatal编程技术网

Python BeautifulSoup:获取网页上的所有链接如何在没有selenium的情况下浏览这些链接?

Python BeautifulSoup:获取网页上的所有链接如何在没有selenium的情况下浏览这些链接?,python,beautifulsoup,Python,Beautifulsoup,所以我试着写一个平庸的脚本,从一个特定的网站下载字幕,你们都可以看到。我是beautifulsoup的新手,到目前为止,我有一个搜索查询(GET)后所有“href”的列表。那么,在获得所有链接之后,我如何进一步导航呢? 代码如下: import requests from bs4 import BeautifulSoup usearch = input("Movie Name? : ") url = "https://www.yifysubtitles.com/search?q="+usear

所以我试着写一个平庸的脚本,从一个特定的网站下载字幕,你们都可以看到。我是beautifulsoup的新手,到目前为止,我有一个搜索查询(GET)后所有“href”的列表。那么,在获得所有链接之后,我如何进一步导航呢? 代码如下:

import requests
from bs4 import BeautifulSoup

usearch = input("Movie Name? : ")
url = "https://www.yifysubtitles.com/search?q="+usearch
print(url)
resp = requests.get(url)
soup = BeautifulSoup(resp.content, 'lxml')
for link in soup.find_all('a'):
    dictn = link.get('href')
    print(dictn)

您需要使用
resp.text
而不是
resp.content
尝试此操作以获取搜索结果

import requests
from bs4 import BeautifulSoup

base_url_f = "https://www.yifysubtitles.com"
search_url = base_url_f + "/search?q=last+jedi"
resp = requests.get(search_url)
soup = BeautifulSoup(resp.text, 'lxml')
for media in soup.find_all("div", {"class": "media-body"}):
    print(base_url_f + media.find('a')['href'])

出局:

事情没那么简单。在这里,您无法直接获取字幕的url。只是搜索结果。然后你点击结果,然后点击下载字幕,然后….真的。但我当时想的是浏览所有通过request.get方法获取的“href”并再次放大它们,因此您必须逐个导航每个链接,然后获取数据并将其存储到某个位置further@Abdullah艾哈迈德·加兹纳维(Ahmed Ghaznavi)是的,没错,但问题是如何浏览所有链接?有什么具体方法吗?你能给我一个同样的例子代码片段吗?我现在正在尝试再次使用requests.get方法。为此,我有一个想法,首先将从该代码中获取的所有链接存储到一个列表中,然后使用selenium并单击每个链接,然后执行相同的获取数据操作!它看起来确实很完美,因为你用别针指向了拥有我们想要的href的类。我会试一试,当你完成后请在这里分享,这样它可以帮助你。的确,我会的。非常感谢它的工作!我将在问题中添加“编辑”部分,并添加修改后的代码。改为单独提问。