![見出し画像](https://assets.st-note.com/production/uploads/images/22334712/rectangle_large_type_2_21ed268db270674dbb3c7218f979b4fa.jpg?width=800)
【Python】note記事のバックアップ|Webスクレイピング無料作成
移転しました。
【Python】Google検索の結果をスクレイピングでコピペしやすくする方法【簡単】 | ムノログ
Colaboratory環境【ファイル添付有】【記事一覧取得補正版】
note記事のWebスクレイピングとバックアップを自動で行うためのTIPS。Pythonで機械学習やろうよ!【第7回】です。
添付ファイル以外無料。
お世話になっております。
合同会社ムジンケイカクプロ ムジンです。
前回
【Python】note記事のバックアップ|Webスクレイピングツール無料作成|実際のプログラムと使い方説明|Colaboratory
不完全な点|記事の総数取得部分を後で修正しよう
note公開記事の総数取得用pythonコード
def func_totalCount(url_id):
import requests
import json
#JSONの取得
json_res = requests.get('https://note.com/api/v2/creators/' + url_id + '/contents?kind=note&page=1&disabled_pinned=false')
data = json_res.json()
print(json.dumps(data, indent=4))
json_dict = json.dumps(data, indent=4)
totalCount = data['data']['totalCount']
print(totalCount)
return totalCount
スクレイピングを2回回しても良かったが、時間がないので、単純にJSONファイルを呼び出して、総数が格納されているところへアクセス。
note記事URLの作成
def num_kiji(url_id,totalCount):
#######自分の記事は何記事#######
post_math = math.ceil(totalCount/6)
urllist = []
df_concat = pd.DataFrame(index=[])
for i in range(1,post_math):
url = 'https://note.com/api/v2/creators/' + url_id + '/contents?kind=note&page=' + str(i) + '&disabled_pinned=false'
urllist.append(url)
return urllist
これで前回作成したものに組み込んで、再度スクレイピングする。
まとめと注意
url_id = 'mkp_consulting'
print(url_id)
自分のnoteダッシュボードからIDらしきものを入れる。
たまに失敗するが、再度、時間間隔を開けて実行すると成功する。
今回作成コードの全部
あまりいたずらに作動させてしまうと、note側に負荷がかかるかもしれないので、有料にしてあります。
以下ファイルに関してはノークレームノンサポート。
ですが、質問あれば随時コメント欄にて。
※答えるかもしれないです。
ここから先は
109字
/
1ファイル
¥ 100
いつもお読みいただき、ありがとうございます。 書くだけでなく読みたいので、コメント欄で記事名入れてもらうと見に行きます。