Sign In
👩‍💻

ローコード時代の加速

これまで私たちが「コード」と呼ぶ数多くのプログラム言語は、結局、機械と対話するためのツールでした。考えてみてください。外国人と私たちがいるとしましょう。私たちが外国語を学んで彼らと自由にやりとりできる方法もありますが、もし彼らが私たちの言葉を覚えるスピードがもっと速くなったとしたらどうでしょう。
以前は、繰り返しの作業やスクリプトを書くとき、プログラミング言語の本を買って読むか、講座を受けないといけませんでしたが、今は「Aという作業をしたいけど、良い方法はないかな?」と聞いてみればよくなりました。
👩‍💻
実際、上でコードを書くことを体験しましたよね。では、ここに新しい機能を追加してみるのはどうでしょうか?
"진행상황을 확인하고 매 분마다 자동으로 크롤링 결과를 csv에 저장하는 코드로 바꿔주십시오."
上の指示で、私たちは定期的に動作する機能や進行状況を確認する機能、CSVで整理する機能などを依頼しました。では、言語モデルには次のように提案します。
💡
既存のコードを修正して進行状況を確認し、毎分自動でネイバーのニュースをクロールしてCSVファイルに保存する機能を追加します。そのためにPythonのtimeとcsvモジュールを使います。
1.
time.sleep(60)を使って毎分クロールを実行します。
2.
クロールしたデータをCSVファイルに保存するためにcsvモジュールを使います。
3.
進行状況を確認できるように、ログメッセージを出力します。
import requests from bs4 import BeautifulSoup import csv import time def get_latest_naver_news(query, num_articles=10): url = f"https://search.naver.com/search.naver?where=news&sm=tab_jum&query={query}" response = requests.get(url) soup = BeautifulSoup(response.text, 'html.parser') news_items = soup.find_all('div', {'class': 'news_area'}, limit=num_articles) latest_news = [] for item in news_items: title = item.find('a', {'class': 'news_tit'}).text link = item.find('a', {'class': 'news_tit'})['href'] latest_news.append({'title': title, 'link': link}) return latest_news def save_news_to_csv(news_items, filename='latest_naver_news.csv'): with open(filename, 'a', newline='', encoding='utf-8') as file: writer = csv.DictWriter(file, fieldnames=['title', 'link']) writer.writeheader() for news in news_items: writer.writerow(news) def main(): query = '인공지능' while True: print(f"{time.strftime('%Y-%m-%d %H:%M:%S')}에 크롤링 시작") latest_news_items = get_latest_naver_news(query) save_news_to_csv(latest_news_items) print(f"{time.strftime('%Y-%m-%d %H:%M:%S')}에 크롤링 완료, 다음 크롤링까지 60초 대기") time.sleep(60) if __name__ == "__main__": main()
実際に「人工知能」に関するニュースをクロールして保存するサービスが作られていることを確認できます。もし作成途中でエラーが出たらどうでしょう?エラー内容をそのまま聞いてみればいいのです。エラーで表示される出力をコピーして言語モデルに質問すれば、そのエラーに合った答えを返してくれます。
つまり、これはプログラミングを知らない人にとっては自然言語で話した内容をコードに変換してくれるだけでなく、既にコードを書いている人にも次のような便利な機能を提供します。
バグ修正:すでに作成済みのコードでバグを発見した場合、言語モデルに問題点を説明して修正方法を尋ねることができます。モデルはバグを直す方法を提案してくれます。
コード最適化:言語モデルはコードのパフォーマンスを向上させたり、もっと効率的にする方法を教えてくれます。例えば、より速いアルゴリズムの提案やコード構造の改善方法なども提案できます。
ドキュメント化やコメント追加:コードにコメントをつけたり、ドキュメントを作るのに言語モデルを活用できます。コードの各部分が何の役割をしているか説明するコメントも作成できます。
最近、コード作成に特化したAmazonのQやMetaのCode LLaMAなどが登場しており、これがLow-code・No-code市場を加速させるとみられています。
💽
🖼️
ⓒ 2023. Haebom, all rights reserved.
出所を表示し、著作権者の許可のもとで営利目的で使用することができます。
👍