2017-09-26 2 views
0

私は毎日最新のファイルを開くスクリプトを書いています。次のように私のコードは、これまでのところです:Python 2.7で毎日ウェブサイトから最新のPDFファイルを開く必要があります

from BeautifulSoup import BeautifulSoup 
import urllib2 
import re 


html_page = urllib2.urlopen("http://www.baytown.org/city-hall/departments/police/daily-media-report") 
soup = BeautifulSoup(html_page) 
for link in soup.findAll('a', attrs={'href': 
re.compile("^/home/showdocument")}): 

     print link.get('href') 

私の出力は、私は、最新のこのリスト内のファイル(最高のid#)とイム立ち往生を読む必要が

/home/showdocument?id=7455 
/home/showdocument?id=7379 
/home/showdocument?id=7381 
/home/showdocument?id=7385 
/home/showdocument?id=7385 
/home/showdocument?id=7401 
/home/showdocument?id=7451 
/home/showdocument?id=7453 

です。最も高い番号のファイルを見つけてそれを読むにはどうしたらいいですか?

答えて

0

すべてのID番号をリストに追加してリストをソートし、最も高いID番号を取得しました。

コード:

import urllib2 
from bs4 import BeautifulSoup 
import re 

pdfs = [] 
html_page = urllib2.urlopen("http://www.baytown.org/city-hall/departments/police/daily-media-report") 
soup = BeautifulSoup(html_page, 'html.parser') 
for link in soup.findAll('a', attrs={'href': re.compile("^/home/showdocument")}): 
     pdfs.append(str(link.get('href')).split('id=')[1]) 
latest = sorted(pdfs)[-1] 
print "Latest PDF id = ", latest 

出力:

Latest PDF id = 7455 
+0

を出力。ありがとうございました – Rod

0

最新のPDFは、オールウェイズ、リスト上の最初のものであるとして:

latest = soup.findAll('a', attrs={'href': re.compile("^/home/showdocument")})[0]["href"].split('=')[1] 
print (latest) 

それだった7455

関連する問題