私はPythonを初めて使いました。プロジェクトの2回目の試みでは、部分文字列、特に識別番号をハイパーリファレンスURL。Pythonを使用して特定のハイパーリファレンスから特定の部分文字列を抽出する
たとえば、this urlは私の検索クエリの結果で、ハイパーリファレンスはhttp://www.chessgames.com/perl/chessgame?gid=1012809です。これから私は識別番号「1012809」を抽出し、URL でファイルをダウンロードする予定の後、URL http://www.chessgames.com/perl/chessgame?gid=1012809に移動するために追加したいと思います。しかし、私は識別子の抽出方法を理解することができないので、現在、私はこれの後ろにいくつかのステップを踏んでいます。ここで
は私のMWEです:
from bs4 import BeautifulSoup
url = 'http://www.chessgames.com/perl/chess.pl?yearcomp=exactly&year=1932&playercomp=white&pid=&player=Alekhine&pid2=&player2=Naegeli&movescomp=exactly&moves=&opening=&eco=&result=1%2F2-1%2F2'
page = urllib2.urlopen(url)
soup = BeautifulSoup(page, 'html.parser')
import re
y = str(soup)
x = re.findall("gid=[0-9]+",y)
print x
z = re.sub("gid=", "", x(1)) #At this point, things have completely broken down...
ここところでbeautifulsoupの使用は何ですか? – johnII
're.findall()'はリストxを返します。あなたは関数 'x(1)'のようにリストを呼び出そうとしています。間違っていると 'x [0]'と書いて最初の値を得ることができます –
ありがとう。私はあなたの答えをアップアップしましたが、私は15以上の評判をまだ確立していないので表示されません。 –