さみしがりやの恋中さんはあまあまをご所望~お隣の天才プログラマーが俺を離してくれないので諦めてイチャイチャしてたらいつの間にか両想いでした~

下城米雪

文字の大きさ
上 下
4 / 32
恋中さんとの隣人生活1

第4話 恋中さんとSelenium

しおりを挟む
「どうして高時給で検索すると女性限定ばかりなのかしら」

 バイト探しを始めて五分が経過した頃、恋中さんが不機嫌そうに言った。

「俺の方も似たような感じだ」

 俺はスマホを床に置いて伸びをした。
 なるべく近場で、何らかのスキルが磨けて、かつ高時給なアルバイト。そんな都合の良い職を探しているのだが、やっぱり現実は甘くない。

 もう少し妥協しよう。
 恋中さんに声をかけようとした俺は、その真剣な後ろ姿を見て口を閉じた。

 ……どっかズレてるけど、良い人だよな。

 例えば、俺と彼女を除いた38人のクラスメイトに同じことを頼んだとして、彼女以上に真剣に手伝ってくれるのは何人だろうか。

 そんなことを考えていると、彼女が低い声で言った。

「本番が無い? お金が貰えるのに練習だけなのかしら?」

「恋中さん、やり方を変えよう」

 俺は彼女がアレな方向に進んでいるのを感じて、少し声を張った。

 初対面で巨乳なプログラミング言語とか言ってたのに、意外と下ネタが通じないのだろうか? ……いや、指紋で間接キスとも言ってたし、特殊な方向性という可能性もあるな。

「どんなやり方にするの?」

 俺は余計な思考を中断して質問に答える。

「通える場所を全部ピックアップして、点数を付けるとかどうだ?」

「素晴らしいわね。点数の基準は最初と同じで良いのかしら?」

「うん、そうしよう。ただ、リストアップするの大変だよな」

 求人サイトの検索機能を使えば、ある程度の絞り込みは可能だ。

 しかし数が多い。そもそも点数を付けるためには、どこかに書き出す必要がある。

 ……なんだかんだ手書きが一番丸いか?

「ちゃらららん」

 何とか楽をしようと考えていると、恋中さんが謎の鳴き声を発した。

「恋中さんお友達特典を使いますか?」

 得意気な顔と、陽気な高い声。
 何かアイデアがあるのだろうか?

「はい、使います」

「仕方ないですねぇ!」

 うざかわいい。
 彼女は胸を張り、見事なドヤ顔で言った。

「プログラムを作れば楽勝です!」

「プログラム?」

「見ててください」

 恋中さんはご機嫌な様子でタイピングを始める。俺は腰を上げて彼女の隣に立ち、画面を覗き見た。

「こういう場合にはSeleniumセレニウムを使うのが定番です」

「セレニウム?」

 元素みたいな名前だなと思っていると、彼女は黒い画面を立ち上げ、何かコマンドを入力した。

 conda activate itumono
 jupyter notebook

 意味はさっぱり分からないが、ブラウザが起動した。

 恋中さんは慣れた様子で画面を操作して、エディターっぽいページに移動する。

「ここにプログラミングする感じ?」

「正解です。これはノートブックといって、インタプリタ言語であるPythonの利点を最大限に生かせるアプリケーションなのですよ」

 俺が質問すると、恋中さんは嬉しそうに答えた。そのドヤ顔を見て「かわいい」と思いながら、もうひとつ問いかける。

「インタプリタ言語って、一行ずつ実行できるって意味だっけ?」

「正解です。よく勉強してますね。偉いです」

 俺はこの時、生まれて初めて授業を真面目に聞いていて良かったと思った。

「ノートブックは、セル単位でプログラムを記述して実行できます。そして結果を後に引き継げるので、機能をちょっとずつテストできます」

「へー、それは便利だな」

 俺の知識は座学レベルでしかない。実技の方はタブレットのアプリでブロックを並べたくらいだ。

 一応、独学でC言語を触ったことがある。
 だが、当時はいくつかのプログラムを実行したところで満足してしまった。

 C言語の場合、プログラムを機械が分かる形に翻訳する「コンパイル」が必須だ。その作業は少しでもプログラムを変更する度に発生して面倒である。だから、ノートブックのように実行しながら結果を確かめられる機能は、とても便利だと思った。

「早速、プログラムを作りますね」

「よろしくお願いします」

「はい!」

 恋中さんは弾むようにタイピングをした。
 ダダダダという音と共に、次々とエディタっぽい場所に文字が現れる。

 from selenium import webdriver
 driver = webdriver.Chrome()
 
 ……すげぇ、全部覚えてるんだ。

 ひとつ覚えるだけでも億劫そうな長い単語が次々と入力される。

 感動しながら見ていると、恋中さんはターンッとエンターキーを叩いた。

 もうひとつのブラウザが立ち上がった。
 普通、ブラウザを立ち上げると検索ページが出てくると思うが、今は真っ白な画面が表示されている。その代わり、上の方に「Chromeは自動テスト ソフトウェアによって制御されています」という表示があった。

「自動テスト?」

「お目が高い!」

 恋中さんメッチャ褒めてくれる。

「セレニウムを使えばブラウザ操作を自動化できます。好きなボタンをクリックしたりとか、欲しい文字を取得したりとか」

「おぉ! つまり求人サイトに書いてある文字をゲットできるのか」

「正解です。早速、ゲットしますね」

 マジですごい。
 俺は、恋中さんにも負けないくらいテンションが上がった。

 プログラミング。
 誰しも一度は憧れみたいな感情を抱いたことがあるはずだ。

 しかし実際に授業を受けた印象は「なんだ、他の教科と変わんねぇな」という感じだった。それを使って何ができるのか、というイメージが難しかった。

 その答えが目の前にある。
 アルバイト先を探す。日常的な行動に対して、プログラミングが活用される。

 ドキドキした。
 どういう結果になるのか全く分からないが、何か俺にとって革命的なことが起きるような予感がした。

「セレニウムを使う時は、ブラウザを立ち上げた後に、情報を取得したいページまで遷移するところから始めます」

 彼女は普通のブラウザで求人サイトを開き、上の方にあるアドレスをコピーした。それからセレニウムのブラウザにペーストして、求人サイトに遷移する。

「次は欲しい情報を右クリックして、検証をクリックします」

 彼女は説明しながら実演する。
 
「おぉ、なんか右の方に色々出てきたな」

「はい。これはウェブページの中身です。ほらここ、よく見ると、今右クリックしたお店の名前がありますよ」

 恋中さんは、その場所を指で示しながら言った。

「ほんとだ。これを、どうやってゲットするんだ?」

「場合によりますが、今回は普通にHTMLでベタ書きですね。この場合は、欲しい要素を構成しているクラス名かタグ名を見ます。今回は……ふふっ、そのまんまだ」

 彼女はマウスを使って「MiseMei」という文字をドラックした。

「どうやら店名というクラスが使われているようです。念のため、ソース全体を見てダブってないか確かめます」

 彼女がタタタとキーボードを叩くと、ソースコードっぽい画面に切り替わった。

「待って。その画面どうやって出したの?」

「今のはCtrl+Uです。普通のサイトなら、ソースコードが全部見れます」

「すげぇ」

 人は本当にすごいと思った時、語彙力が小学生レベルになるらしい。
 その後も恋中さんは説明と実演を続け、あっという間にプログラムを完成させた。 

 ざっくり掻い摘むと、

 from selenium.webdriver.common.by import By
 driver.find_elements(By.CLASS_NAME, "MiseMei")

 というプログラムで店名を所有した「エレメント」を取得できる。ウェブページは無数のエレメントによって構成されており、セレニウムは、これを自由に操ることができる。

 今回のサイトから情報を抜き出す場合、必要な機能はふたつ。

 ひとつは求人情報が記されたエレメントを取得すること。
 もうひとつは次のページへ移動するためのボタンをクリックすること。

 一見すると難しい技術が必要に思える。
 しかし、必要なプログラムは次の三つしかない。

 # エレメントを取得する方法
 e = driver.find_elements( <欲しいエレメントの情報> )

 # ボタンをクリックする方法
 e.click()

 # エレメントから文字列を取得する方法
 e.text

 このたった三つの要素を組み合わせることで、恋中さんはウェブページから情報を抜き出すプログラムを作成した。傍目から見たそれは、まるで魔法のようだった。

「後は待てばCSVファイルが完成します。それをスプレッドシートに読み込んで、一緒に点数を付けましょう」

 恋中さんは無邪気な笑顔で言った。
 直前まで高度な技術を披露していたとは思えないようなギャップを前に、言葉が出なかった。だから俺は、軽く息を吸い込んでから返事をした。

「ありがとう。マジで助かる」

「ふふん。どうですか? これが恋中さんお友達特典ですよ?」

「最高」

「どれくらい最高ですか?」

「一家に一人は欲しくなるレベル」

「それは無理な相談です。恋中さんは一人だけですからね」

 恋中さんは今日一番嬉しそうな笑顔で言った。
 
「まにゃっ!?」

 その直後、彼女は顔を真っ赤にして謎の悲鳴をあげた。
 どうしたのだろう。不思議に思って見ていると、とても早口で説明してくれた。

「お、お、おうちに欲しいというのは、つまりそのプロポーズ的な意味でしたか?」

「普通に違うけど」

「ごめんなさい出会って一週間で一生を決める判断をするのはまだちょっと難しいのでもう少し好感度を稼いだ後にもう一回言ってください。その時また考えます」

 なんか、よく分らんけど振られた?

「……はは」

「なっ、なんで笑うのかしら!?」

「ごめん、なんか楽しくて」

 怒られるかなと思いながら答えると、恋中さんは、きょとんとした。

「……楽しい?」

「うん、楽しい」

「……そっか」

 恋中さんは俯いた。
 その表情は前髪に隠れてしまって見えない。

 どういう感情なのだろう?
 俺は少し不安になって、笑いも引っ込んだ。

 その瞬間、彼女は俺と反対方向に顔を向け、小さな声で言った。

「……私も、楽しい」

「……そうか」

 反則だろ、今の。
 ドキッとした。女子がイケメンに壁ドンされる気持ちって、こんな感じなのだろうかと、よく分からない例えが頭に浮かぶくらいにドキッとした。

 その後、なんとなく二人とも無言だった。
 俺は唇を噛み、騒がしい心臓を手で押さえながらディスプレイを見る。

 セレニウムによって画面が自動的に動いている。このプログラムは、すべての求人情報をゲットしている。恋中さんは、これを十分くらいで完成させた。

 ……今のところ、貰ってばっかりだな。

 彼女は友達が欲しいと言った。
 その不思議な性格故に、これまで長続きした交友関係は無かったと言っていた。

 実を言えば、俺も友達に関して不安を抱いていた。
 親元を離れ、地元の友達と別れ、誰も自分のことを知らない高校を選んだからだ。

 これまでと違う文化、常識、地元ルール。
 上手く順応できるかどうか不安だった。

 高校生活初日、周囲は同じ中学校の連中と固まっていた。
 その輪に入るのは難しくて、俺は溜息と一緒に窓の外を見た。

 恋中さんと出会った。
 その瞬間から、寂しいと感じたことは一度も無い。

 ……こっちも、返さないとだよな。

 何をすれば彼女が喜ぶのかは分からない。
 ただ、可能な限り恩を返していきたいと、そう思った。
しおりを挟む
感想 5

あなたにおすすめの小説

無敵のイエスマン

春海
青春
主人公の赤崎智也は、イエスマンを貫いて人間関係を完璧に築き上げ、他生徒の誰からも敵視されることなく高校生活を送っていた。敵がいない、敵無し、つまり無敵のイエスマンだ。赤崎は小学生の頃に、いじめられていた初恋の女の子をかばったことで、代わりに自分がいじめられ、二度とあんな目に遭いたくないと思い、無敵のイエスマンという人格を作り上げた。しかし、赤崎は自分がかばった女の子と再会し、彼女は赤崎の人格を変えようとする。そして、赤崎と彼女の勝負が始まる。赤崎が無敵のイエスマンを続けられるか、彼女が無敵のイエスマンである赤崎を変えられるか。これは、無敵のイエスマンの悲哀と恋と救いの物語。

隣の優等生は、デブ活に命を捧げたいっ

椎名 富比路
青春
女子高生の尾村いすゞは、実家が大衆食堂をやっている。 クラスの隣の席の優等生細江《ほそえ》 桃亜《ももあ》が、「デブ活がしたい」と言ってきた。 桃亜は学生の身でありながら、アプリ制作会社で就職前提のバイトをしている。 だが、連日の学業と激務によって、常に腹を減らしていた。 料理の腕を磨くため、いすゞは桃亜に協力をする。

やくびょう神とおせっかい天使

倉希あさし
青春
一希児雄(はじめきじお)名義で執筆。疫病神と呼ばれた少女・神崎りこは、誰も不幸に見舞われないよう独り寂しく過ごしていた。ある日、同じクラスの少女・明星アイリがりこに話しかけてきた。アイリに不幸が訪れないよう避け続けるりこだったが…。

青天のヘキレキ

ましら佳
青春
⌘ 青天のヘキレキ 高校の保健養護教諭である金沢環《かなざわたまき》。 上司にも同僚にも生徒からも精神的にどつき回される生活。 思わぬ事故に巻き込まれ、修学旅行の引率先の沼に落ちて神将・毘沙門天の手違いで、問題児である生徒と入れ替わってしまう。 可愛い女子とイケメン男子ではなく、オバちゃんと問題児の中身の取り違えで、ギャップの大きい生活に戸惑い、落としどころを探って行く。 お互いの抱えている問題に、否応なく向き合って行くが・・・・。 出会いは化学変化。 いわゆる“入れ替わり”系のお話を一度書いてみたくて考えたものです。 お楽しみいただけますように。 他コンテンツにも掲載中です。

極悪家庭教師の溺愛レッスン~悪魔な彼はお隣さん~

恵喜 どうこ
恋愛
「高校合格のお礼をくれない?」 そう言っておねだりしてきたのはお隣の家庭教師のお兄ちゃん。 私よりも10歳上のお兄ちゃんはずっと憧れの人だったんだけど、好きだという告白もないままに男女の関係に発展してしまった私は苦しくて、どうしようもなくて、彼の一挙手一投足にただ振り回されてしまっていた。 葵は私のことを本当はどう思ってるの? 私は葵のことをどう思ってるの? 意地悪なカテキョに翻弄されっぱなし。 こうなったら確かめなくちゃ! 葵の気持ちも、自分の気持ちも! だけど甘い誘惑が多すぎて―― ちょっぴりスパイスをきかせた大人の男と女子高生のラブストーリーです。

燦歌を乗せて

河島アドミ
青春
「燦歌彩月第六作――」その先の言葉は夜に消える。 久慈家の名家である天才画家・久慈色助は大学にも通わず怠惰な毎日をダラダラと過ごす。ある日、久慈家を勘当されホームレス生活がスタートすると、心を奪われる被写体・田中ゆかりに出会う。 第六作を描く。そう心に誓った色助は、己の未熟とホームレス生活を満喫しながら作品へ向き合っていく。

青春の初期衝動

微熱の初期衝動
青春
青い春の初期症状について、書き起こしていきます。 少しでも貴方の心を動かせることを祈って。

セーラー服美人女子高生 ライバル同士の一騎討ち

ヒロワークス
ライト文芸
女子高の2年生まで校内一の美女でスポーツも万能だった立花美帆。しかし、3年生になってすぐ、同じ学年に、美帆と並ぶほどの美女でスポーツも万能な逢沢真凛が転校してきた。 クラスは、隣りだったが、春のスポーツ大会と夏の水泳大会でライバル関係が芽生える。 それに加えて、美帆と真凛は、隣りの男子校の俊介に恋をし、どちらが俊介と付き合えるかを競う恋敵でもあった。 そして、秋の体育祭では、美帆と真凛が走り高跳びや100メートル走、騎馬戦で対決! その結果、放課後の体育館で一騎討ちをすることに。

処理中です...