ツイート用過去記事のタイトルとURLの一覧出力

できた~(*´▽`*)

import os
import urllib.request, urllib.error
from bs4 import BeautifulSoup as bs4
#書き込みファイル
FILE_NAME_A = r'ふるぱす\hatenaAllPostList.txt'
#文字コード
FILE_ENCODING = 'UTF-8'
#文頭文章
HEAD_TEXT = r"#はてなブログ 過去記事です(*'▽')ノ<"
#URL
INPUT_URL = 'https://elve.hatenadiary.jp/'
#ファイル書き込み(文字列をそのまま書き込み)
def write_file_from_str(p_filename, p_mode, p_data):
file = open(p_filename, p_mode, encoding=FILE_ENCODING)
file.write(p_data)
file.close()
#メイン処理
#出力ファイルがあったら削除
if os.path.exists(FILE_NAME_A):
os.remove(FILE_NAME_A)
p = 1
while 1:
readPage = INPUT_URL + "archive?page=" + str(p)
#URL取得
try:
f = urllib.request.urlopen(readPage)
except :
break;
outputText = ''
soup = bs4(f)
#エントリータイトルクラス取得
ss = soup.findAll(class_='entry-title')
if ss == []:
break;
for s in ss:
outputText = outputText + HEAD_TEXT + s.get_text(strip=True) + ' ' + s.find('a').get('href') + '\n'
#1ページ分ファイル書き込み
write_file_from_str(FILE_NAME_A, 'a', outputText)
#次のページへ
p = p + 1
print("終わり!")

結果

900件以上出力があったのに登録できるの700件までだった(´;ω;`)ウゥゥ
f:id:elve:20200301113345p:plain

どのくらい面白かった?

星を押して送信してね

平均 0 / 5. Vote count: 0

是非フォローしてください

最新の情報をお伝えします

コメントする

メールアドレスが公開されることはありません。 が付いている欄は必須項目です