3
watchseriesfree.toウェブサイト上の特定のファイルホストからいくつかのリンクを抽出しようとしています。以下の場合、私はrapidvideoリンクをしたいので、私はrapidvideo正規表現がbs4で動作しない
import re
import urllib2
from bs4 import BeautifulSoup
def gethtml(link):
req = urllib2.Request(link, headers={'User-Agent': "Magic Browser"})
con = urllib2.urlopen(req)
html = con.read()
return html
def findLatest():
url = "https://watchseriesfree.to/serie/Madam-Secretary"
head = "https://watchseriesfree.to"
soup = BeautifulSoup(gethtml(url), 'html.parser')
latep = soup.find("a", title=re.compile('Latest Episode'))
soup = BeautifulSoup(gethtml(head + latep['href']), 'html.parser')
firstVod = soup.findAll("tr",text=re.compile('rapidvideo'))
return firstVod
print(findLatest())
を含むテキストで、これらのタグをフィルタする正規表現を使用ししかし、上記のコードは空白のリストを返します。私は間違って何をしていますか?
NBは:: 'findAll'はBS4でfind_all''に名前が変更されているようだあなたは何ができるか
はsearching functionを使用して
.get_text()
を呼び出すことによってtr
要素の実際のテキストをチェックすることです。 (どうやら、bs3のバージョンは保持されていましたが、とにかくあなたのコードを更新していました。) 'find_all'関数のシグネチャには' text'パラメータがなく 'string'パラメータもあります。 – Evert