我已经在python中创建了一个脚本,以获取指向玩家Twitter帐户的链接。问题是Twitter链接位于iframe
中。我可以用硒来解析。但是,我想知道是否还有其他方法可以使用requests
模块来利用脚本标记或其他方法来解析链接。
如果滚动该站点,则可以看到位于右侧区域的twitter链接,如下图所示:
我尝试过:
import requests
from bs4 import BeautifulSoup
link = "https://247sports.com/Player/JT-Tuimoloau-46048440/"
def get_links(link):
res = requests.get(link,headers={"User-Agent":"Mozilla/5.0"})
soup = BeautifulSoup(res.text,"lxml")
twitter = soup.select_one("a.customisable-highlight").get('href')
print(twitter)
if __name__ == '__main__':
get_links(link)
答案 0 :(得分:1)
我不知道如何实际获取iframe,但是也许您可以通过另一种方式获取Twitter名称(然后再创建指向该Twitter帐户的链接)。
您所需的信息似乎已用div
隐藏在class="tweets-comp"
标记中。如果您提取属性data-username
的值,则应该以Twitter帐户的名称结尾:
import requests
from bs4 import BeautifulSoup
link = "https://247sports.com/Player/JT-Tuimoloau-46048440/"
res = requests.get(link,headers={"User-Agent":"Mozilla/5.0"})
soup = BeautifulSoup(res.text,"html.parser")
div = soup.find('div', {'class':'tweets-comp'})
print(div['data-username'])
# JT_tuimoloau