Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
ノンプロ研 Python初級講座第7期卒業LT
Search
中野康雄(ARI)
January 07, 2022
Programming
1
200
ノンプロ研 Python初級講座第7期卒業LT
ノンプロ研 Python初級講座卒業LT資料です。
中野康雄(ARI)
January 07, 2022
Tweet
Share
More Decks by 中野康雄(ARI)
See All by 中野康雄(ARI)
エンジニアのためのドキュメント力基礎講座〜構造化思考から始めよう〜(2025/02/15jbug広島#15発表資料)
yasuoyasuo
22
8.7k
230428_DX Criteria 社内読合せ勉強会 [ No1:チーム編(前編)]
yasuoyasuo
0
130
若手エンジニア成長支援No1企業を目指して(221118_QiitaNight_LT)
yasuoyasuo
1
22k
220708_ノンプロ研_卒業LT_インストラクション講座
yasuoyasuo
0
150
ノンプロ研_ビブリオバトル資料_組織に「成長」と「成果」をもたらすマネジャーの教科書
yasuoyasuo
0
250
エンジニア駆動DXへの招待 ~チームの隙間を埋めるための3つの提案~
yasuoyasuo
0
1.3k
一年をブログで振り返ります ~ノンプロ研 年末BT大会 Day3~
yasuoyasuo
1
240
【ARI】成長支援事例のご紹介~【DX無料オンラインセミナー】DX時代を勝ち抜くエンジニア成長戦略~
yasuoyasuo
0
1.2k
【ARI】品質よもやま話_#12(情報の価値は相手が決める)
yasuoyasuo
0
830
Other Decks in Programming
See All in Programming
AWS CDKの推しポイント 〜CloudFormationと比較してみた〜
akihisaikeda
3
310
C++20 射影変換
faithandbrave
0
520
たった 1 枚の PHP ファイルで実装する MCP サーバ / MCP Server with Vanilla PHP
okashoi
1
170
Systèmes distribués, pour le meilleur et pour le pire - BreizhCamp 2025 - Conférence
slecache
0
100
Azure AI Foundryではじめてのマルチエージェントワークフロー
seosoft
0
130
ドメインモデリングにおける抽象の役割、tagless-finalによるDSL構築、そして型安全な最適化
knih
11
2k
Webからモバイルへ Vue.js × Capacitor 活用事例
naokihaba
0
760
来たるべき 8.0 に備えて React 19 新機能と React Router 固有機能の取捨選択とすり合わせを考える
oukayuka
2
840
Webの外へ飛び出せ NativePHPが切り拓くPHPの未来
takuyakatsusa
2
340
iOSアプリ開発で 関数型プログラミングを実現する The Composable Architectureの紹介
yimajo
2
210
PHP 8.4の新機能「プロパティフック」から学ぶオブジェクト指向設計とリスコフの置換原則
kentaroutakeda
2
470
Select API from Kotlin Coroutine
jmatsu
1
190
Featured
See All Featured
Building Flexible Design Systems
yeseniaperezcruz
328
39k
A Tale of Four Properties
chriscoyier
160
23k
Thoughts on Productivity
jonyablonski
69
4.7k
Rebuilding a faster, lazier Slack
samanthasiow
81
9k
Imperfection Machines: The Place of Print at Facebook
scottboms
267
13k
YesSQL, Process and Tooling at Scale
rocio
173
14k
Producing Creativity
orderedlist
PRO
346
40k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
33
5.9k
Speed Design
sergeychernyshev
32
1k
Git: the NoSQL Database
bkeepers
PRO
430
65k
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
31
2.4k
Designing Experiences People Love
moore
142
24k
Transcript
Copyright ©A.R.I. All Rights reserved. 1 会えない時間が愛を育てる ~ノンプロ研 Python初級講座第7期卒業LT大会~ 2022年1月7日
中野ヤスオ(@yasuoyasuo)
2 自己紹介 中野 ヤスオ(S49生) 兵庫県出身/千葉県市川市在住/3児の父 ARアドバンストテクノロジ株式会社(ARI) 取締役 専務執行役員
Twitter/note/Qiita/Insta:@yasuoyasuo ノンプロ研は今年10月より。 Python初心者講座#7受講中 ume先生最高! 美味しいものを 食べるのが大好き
3 この3か月間にノンプロ研で得たアウトプット機会 1. アドベントカレンダー 2. 年末BTにおけるLT 3. 卒業LT ?
4 卒業制作のテーマ おすすめ記事シェア作業の効率化
5 おすすめ記事シェア作業とは?(1)平日 ITスキル&キャリアアップに 役立つ最新情報を毎日3本 厳選してChatworkでお届け
6 おすすめ記事シェア作業とは?(2)週末 毎週末に1週間分のおすす め記事まとめnote公開中 良かったらマガジン フォローしてね♥ https://note.com/yasuoyasuo/m/mf8872bd8975c
7 おすすめ記事シェア作業とは?(参考)週末note記事① • 週15本は2020年11月頃から • 現在56本(マガジン化) • 実は微妙に書き方も変化 自分なりに継続的最適化
noteの仕様変更 https://note.com/yasuoyasuo/m/mf8872bd8975c
8 おすすめ記事シェア作業とは?(参考)週末note記事② カテゴリ分け (中野の主観) 毎週基本15本 (祝日等もあり不規則) タイトル コメント リッチ リンク
カテゴリ 記事以外のコンテンツ も含まれている
9 現状の課題(1)日々のデータ登録が面倒くさい • スプレッドシートに記事情 報を日々記載 • スプレッドを元にChatwork に定時投稿するGASを用意 • スプレッドシートに記載す
るのが面倒くさい • GASの処理が結構不安定 (自分の設計が悪いせい乙) 一応仕組み化 してみたものの・・・
10 現状の課題(2)おすすめ記事がDB化出来ていない • 日々データを元にベーステ キストを出力するGAS用意 • テキストを編集してnote化 • note化の際にカテゴリ分け したり、コメントを修正、
一部記事を追加変更も • 結局noteが正の状態になり 記事の一覧DBが存在しない Note作成時に 直接追記修正 基本は日々の情報を元 にしつつも・・・ 一応仕組み化 したものの・・・
11 課題解決の方向性 日々のデータ登録が 面倒くさい おすすめ記事がDB化 出来ていない 「はてブ」を活用& シェアツール スクレイピング& データ処理&API利用
記事一覧化ツール スクレイピング& データ処理&API利用
12 卒業作品その1: はてブで自分のブックマークのうち特定タグのものをChatworkに通知する Chatwork Excel はてなブックマーク 作品 その 1 •
はてブの特定タグのものについて、その記事情報とコメントをChatworkの情報共有専用グループに通知 • 同時にローカルにもアーカイブ情報としてExcelファイル形式で保存
13 卒業作品その1:Pythonコード 苦労した点 • スクレイピング作業の本質 の理解 • 対象コンテンツのDOM構 造を理解する •
BeautifulSoupの理解 • 戻り値はTagだった! →つまり • 階層をたどれる • 戻り値にfindや find_allをかけれる
14 卒業作品その2: マガジンにひもづくnoteをスクレイピングし紹介記事情報をCSV化する CSV note 作品 その 2 • Noteの特定マガジンにひもづくnote記事を取得
• 各note記事で紹介されている記事を一覧化してファイルに吐き出す • カテゴリごとのランキング • この一覧自体の共有
15 卒業作品その2:Pythonコード(1/4) 【苦労した点】 • スクレイピング作業の本質 の理解 • 対象コンテンツのDOM構 造を理解する •
BeautifulSoupの理解 • 戻り値はTagだった! →つまり • 階層をたどれる • 戻り値にfindや find_allをかけれる
16 卒業作品その2:Pythonコード(2/4) 【苦労した点】 • 構造化されていないデー タの対応 • ルールがなければスク レイピングできない •
「自分の適当さ」との 闘い
17 卒業作品その2:Pythonコード(3/4) 【苦労した点】 • note固有のタグ構造 • 特にリッチリンク(埋め 込み型)部分の DOM解析
18 卒業作品その2:Pythonコード(4/4) 【苦労した点】 • 「もっとみる」の対応 • 表示ページの出力仕様変更 の影響 • 「タイル」から変えたら
出力不可に…
19 まだまだ直したいところがある 作れば作るほど やりたいことが増えてきた 年末年始はPython一色だった
20 今回のプログラムに参加させていただくきっかけ 「学ぶ」ということを 学びたい
21 感じたこと 「知っている」と 「やったことがある」の 解像度の違い 「スクレイピング」で止まるか「BeautifulSoup」までやるか
22 感じたこと きっかけさえあれば 学ぶ材料は山ほどある Google先生の偉大さを改めて知る
23 感じたこと 「講義」以外の時間が勝負 種まきと熟成の違いか
24 感じたこと 会えない時間が 「愛」を育てる 郷ひろみ?
25 感じたこと ついつい教え過ぎてしまう 伝え過ぎてしまう 「エゴ」との闘い その話は誰のためなのか?
26 感じたこと 「余白」をどう設計するか? 指示に従う部分と自分がマネージできる部分とのバランス
27 魚そのものではなく、魚の釣り方を学ぶことに投資したい 中長期的に資産となる 習慣や考え方を 身に付けてもらいたい 和田卓人(@t_wada)氏 ソフトウェアエンジニアとしての姿勢と心構え / Software Engineer‘s
Survival Guide より
28 でも・・・ 単純に楽しかった! 知らないことを知る喜びは尽きない
29 謝辞 Umeさん Kudouさん カワムラさん ありがとうございました! こんなに手厚いと思ってなかったです
Copyright ©A.R.I. All Rights reserved. 30 会えない時間が愛を育てる ~ノンプロ研 Python初級講座第7期卒業LT大会~ 2022年1月7日
中野ヤスオ(@yasuoyasuo) 引き続き よろしく お願いします! 宜しければフォロー ください!