私はPythonを学んでいます。そして、私はそれを使って図書の本の可用性をチェックするプロセスを自動化しようとしています。beautifulsoupを使って図書の可用性を確認する
私はbs4、リクエスト、パーティションで実行しようとしました。
これは私がから解析しようとしていますリンクです:[http://catalogue.nlb.gov.sg/cgi-bin/spydus.exe/FULL/EXPNOS/BIBENQ/1592917/156302298,2][1]
私はそのソースコードを表示し、ここでの抜粋です:
<tr>
<td valign="top"><a href="/cgi-bin/spydus.exe/ENQ/EXPNOS/GENENQ/1564461?LOCX=BIPL">**Bishan Public Library**</a>
<br />
</td>
<td valign="top">
<book-location data-title="The opposite of everyone" data-branch="BIPL" data-usagelevel="001" data-coursecode="" data-language="English" data-materialtype="BOOK" data-callnumber="JAC" data-itemcategory="" data-itemstatus="" data-lastreturndate="20160322"
data-accession="B31189097E" data-defaultLoc="Adult Lending">Adult Lending</book-location>
</td>
<td valign="top"><a href="/cgi-bin/spydus.exe/ENQ/EXPNOS/BIBENQ/1564461?CGS=E*English">English</a>
<br /><a href="/cgi-bin/spydus.exe/WBT/EXPNOS/BIBENQ/1564461?CNO=JAC&CNO_TYPE=B">JAC</a>
<br />
</td>
<td valign="top">**Available**
<br />
</td>
</tr>
<tr>
<td valign="top"><a href="/cgi-bin/spydus.exe/ENQ/EXPNOS/GENENQ/1564461?LOCX=BMPL">**Bukit Merah Public Library**</a>
<br />
</td>
<td valign="top">
<book-location data-title="The opposite of everyone" data-branch="BMPL" data-usagelevel="001" data-coursecode="" data-language="English" data-materialtype="BOOK" data-callnumber="JAC" data-itemcategory="" data-itemstatus="" data-lastreturndate="20160405"
data-accession="B31189102C" data-defaultLoc="Adult Lending">Adult Lending</book-location>
</td>
<td valign="top"><a href="/cgi-bin/spydus.exe/ENQ/EXPNOS/BIBENQ/1564461?CGS=E*English">English</a>
<br /><a href="/cgi-bin/spydus.exe/WBT/EXPNOS/BIBENQ/1564461?CNO=JAC&CNO_TYPE=B">JAC</a>
<br />
</td>
<td valign="top">**Available**
<br />
</td>
</tr>
私がしようとしています情報解析するのは本が利用できるライブラリです。
は、ここに私がやったことだ:
import requests, bs4
>>> res = requests.get('http://catalogue.nlb.gov.sg/cgi-bin/spydus.exe/FULL/EXPNOS/BIBENQ/1592917/156302298,2')
>>> string = bs4.BeautifulSoup(res.text)
は、その後、私は文字列に列をしよう:
>>> str(string)
そして、それはアウト全体のソースコードを印刷し、ひどく私のIDLEを遅れ!
それが遅れて停止した後、私はこれでした:
>>> keyword = '<a href="/cgi-bin/spydus.exe/ENQ/EXPNOS/GENENQ/1564461?LOCX='
>>> string.partition('keyword') Traceback (most recent call last): File "<pyshell#8>", line 1, in <module>
string.partition('keyword') TypeError: 'NoneType' object is not callable
を、それがエラーの原因となった理由を私は知らない、私は右、文字列に文字列を作りましたか?
また、「ライブラリブランチ」の直前で「使用可能」の直後にあるため、このキーワードを使用しました。だから、たとえそれが他の冗長コードを大量に生成したとしても、最初の行でその本が利用できるライブラリブランチを見ることができます。
私はそれが最も効率的な方法ではなかったと確信しています。あなたが正しい方法で私を指すことができれば、私に非常に感謝します!
これは非常に長い投稿ですが、私は可能な限り自分の状況を詳細にしようとしています。私と一緒にお越しいただきありがとうございます。あなたが任意の変数にstr(string)
の結果を割り当てていなかったので、