page = "http://www.flashscore.com/"
soup = bs(request.urlopen(page).read(), 'lxml')
typeyourcountry = input("Type in the NAME or ID of the country you're looking for : ")
a = '/soccer/' + typeyourcountry.lower()
for link in soup.findAll('a', attrs={'href': re.compile(a)}):
print (link)
find_urls = re.compile(a+'(.*?)"')
输出:
<a href="/soccer/serbia/" onclick="return cjs.dic.get('Helper_Menu').lmenu(167,req_url,1);">Serbia</a>
<a href="/soccer/serbia/super-liga/">Super Liga</a>
即使有3个链接应该被输出,我只能找到一个,这是一个动态链接还是有人对任何事情有什么想法? 正如你可以在图像上看到的那样,有三个链接应该输出,我可以在源查看器中看到它们中的每一个,但不知道除此之外还有什么,感谢帮助! 刚注意到JS:
onclick="return cjs.dic.get('Helper_Menu').lmenu(167,req_url,1);
我想上面的这个脚本揭示了信息(我正在寻找),有什么方法可以让我用python显示它,发出相同的请求js请求,只得到那部分数据或者什么&#39;可行的解决方案?
答案 0 :(得分:1)
这是因为其他链接是使用 Javascript 生成的。事实上,如果你在浏览器中使用开发工具并停用JS,你会发现只有BeautifulSoup找到的链接。
如果您希望显示其他链接,则应使用 PhantomJS ;)
见啊!