スパルタエンコーディングクラブ明日学習団ホームページ開発3週目

3467 ワード

多くの人が聞いたことのあるPythonに初めて触れて、心配して興奮しました.授業が始まったばかりで、3週間の授業の中で一番分かりやすい授業です.直感がどれほど大きなメリットなのかを感じます.
もともと迷っていたデータをフィルタリングにインポート(javascriptにインポートするのはまだぼろぼろ...)サーバーを保存することは難しそうに聞こえますが、壊れたとたんに面白くなり、Web開発への意志が回復しました.まだまだ練習が必要ですが、趣味や楽しみを感じる過程です.
以下は学習内容の要約です
スクロールおよび必要なパッケージ
スクロール:検索エンジンの転送動作と意味の切り取りを混在させる
サーバから必要なデータをフィルタ
重要な1をスクロールします.コード要求の取得=要求
2.私が欲しい情報をフィルタ=bs 4
BS4(BeautifulSoup)
1.select one:インポート
インポートデータをインポートするテキストをインポートする場合はtitleを使用します.text
タグのプロパティを取得する場合、['href']
2.select:複数の情報を同時にインポートする場合
結果はリストに記載されています.
右クリック→チェック→要素を使用してインポートする部分を決定→右クリック→コピー→セレクタをコピー→パイの位置に貼り付け
例)trs=soup.select ('#old_content > table > tbody > tr')
スクロールには、異なるWebサイトで異なるポリシーが必要です.
例)tr in trs:
a_tag = tr.select_one('td.title > div >a')
print(a_tag)
a tagは、任意に貼り付けたタグを選択し、インポートしたデータtrsからタグを再度インポートする場合にselect oneを使用します.カッコには、インポートするコードが含まれています.
スクロールの例
import requests
from bs4 import BeautifulSoup
headers = {'User-Agent' : 'Mozilla/5.0 (Windows NT 10.0; Win64; x64)AppleWebKit/537.36 (KHTML, like Gecko) Chrome/73.0.3683.86 Safari/537.36'}
data = requests.get(' https://movie.naver.com/movie/sdb/rank/rmovie.nhn?sel=pnt&date=20200303',headers=headers )
soup = BeautifulSoup(data.text, 'html.parser')
trs = soup.select('#old_content > table > tbody > tr')
for tr in trs:
a_tag = tr.select_one('td.title > div >a')
if a_tag is not None:
r_tag = tr.select_one('td:nth-child(1) > img')['alt']
title = a_tag.text
score = tr.select_one('td.point').text
print(r_tag, title, score)
データベースの使用理由)
データベース・プログラムを使用して、データのインポートと書き込みをうまく行います.
robo 3 TはMongoDBの実行状況を表示するためのプログラムです
SQL:指定されたフォーマット(列と行は事前に決定する必要があります)でEXCELに近い
中間的に変更は困難ですが、構造化されたデータの抽出と分析が容易です.
ex)MS-SQL、MY-SQL、Oracle
NoSQL:NOT ONLY SQL、バイナリ形式で逐行表示
非常に柔軟で、変化の大きいベンチャー企業や初期によく使われています.
ex) MongoDB
pymongo
pythonを使用してMongoDBを操作するライブラリ
類似のデータが集約され、集合dbと呼ばれる.users.で、ユーザーはcollection名です
1.insert:データの挿入
例)db.users.insert_one(doc)
  • find:データの検索
    例)同じages=list(db.users.find(「age」:21})
    print(same_ages)
    salme agesはランダムに作成された変数です
    実行時に自動的に{'id':False}が生成されます.これは、特殊に生成されたidを表示せずに、1行のデータのみをインポートすることを意味します.
    例)user=db.users.find_one({'name':'bobby'},{'_id':False})
    print(user)
  • update:既存データの更新(一部または全部変更)
    例)db.users.update_one({'name':'bobby'},{'$set':{'age':19}})
    ボビーという名前を探して、年齢を19に変えます.
    update manyはすべての条件に対する変更なので、あまり使われません.
  • delete:データの削除
    例)db.users.delete_one({'name':'bobby'})
    名前が見つかったのはボビーで、
  • を削除します.
    pymongoコードの概要
    保存→例
    doc = {'name':'bobby','age':21}
    db.users.insert_one(doc)
    検索-例
    user = db.users.find_one({'name':'bobby'})
    複数検索-例(id値を除く)
    same_ages = list(db.users.find({'age':21},{'_id':False}))
    置換-例
    db.users.update_one({'name':'bobby'},{'$set':{'age':19}})
    パージ-例
    db.users.delete_one({'name':'bobby'})