見出し画像

エンジニア採用担当がプログラミング頑張る話【8日目/2ヶ月間】

こんにちは、@hiroki_maekawaです。

現在の状況

先週「クローラーを作って、取得したデータをデータベースに突っ込む」という課題が最後までできなかったため、今週も同じ課題をやっていきます。
目標は明日までに上記課題を終わらせて、水曜日から新しい課題に移れるように頑張っていきたいと思います。


今日の目標

・自分で調べてわからなかった部分はすぐに質問をする
・構造体の設定をする
・MySQLを用いてデータを追加する
・データを追加した後、何をやらなければならないのかを考える


1. 構造体の設定をする

構造体は、「データにまとまりを持たせたい時に作るもの」と分かりました。
また、構造体名には"."を入れることはできないことも学びました。
今回はテーブルにタイトル名を入れていくため、下記コードを書きました。

	type title struct{
		id int
		content string
	}


2. MySQLを用いてデータを追加する

まず、@Sueken51さんにオススメ頂いた下記サイトを読みました。

これでテーブルに値を入れる、確認する、削除する方法を学びました。

ただ、今はコマンドを打っているだけなので、Goでスクレイピングしてきたデータをテーブルに入れるためには、恐らく下記の手順が必要だと仮説を立てました。

①Goでスクレイピングしてきたデータをcsvファイルに保存
②MySQLでそのcsvファイルをインポートする


ここまで仮説を立てたところで、先週スクレイピングで結局titleを1つしか取ることができなかったので、別のサイト(googleニュースのヘッドライン)からニュースのtitleやURLを複数取りたいと思い、やり方を調べていたら沼にハマってそのまま1日が終わってしまいました。。

Find関数やEach関数、Text関数、Attr関数を使えば良いということは分かったのですが、どのようにEach関数を使えば良いか、また要素を取ってくれば良いかがググっても全く分からず、何とももどかしい1日を過ごしてしまいました。

その後、そのように要素を取ってくれば良いか下記サイトで学び、何とか取ってきたい部分のURLを指定することがでできました。

また、goqueryの公式ドキュメントが読めるようになると後々楽になるとも教えて頂いたので読んで実装を試みましたが、エラー出まくりになってしまったので、今後もお世話になりそうです(泣)


今日できるようになったこと

・構造体の設定

・要素の指定


さいごに

今日分からなくなったところが出てきた時に焦ってしまったため、分からなくなった時はどこが分からないのかを明確にして、落ち着いてひとつひとつこなしていくことが大切だと感じました。分からないところが出てくると非常にフラストレーション溜まりますが、落ち着いてひとつひとつやっていきたいと思います。

この記事が気に入ったらサポートをしてみませんか?