Webスクリプト
Webスクリプトについて説明します.
Webスクロールとは異なり、scrapingとは、予め取得した情報を引き裂く感覚で、ウェブサイトから取得した情報を加工し、所望の情報のみを取得することをいう.
これにより、情報のインポートと編集が容易になります.
これを使用するには、主に2つのモジュールを使用します.
リクエストはurlを受信する役割であり、BeautifulSoupは、受信したurlコンテンツを簡単に処理するのに役立ちます.
このようにして得られるURLのコンテンツは、そのサイトを構成するhtml、css、javascriptの組み合わせによって構成され、Webから得られるコンテンツの大部分はhtmlにおいてもbodyのコンテンツである.
何ができるのか、ショッピングサイトからショッピングリストを抽出し、直接条件をつけて、自分の望む採点やコメント数を満たす内容だけを出力することができます.
この利便性は、データの増加に伴って効率的に発揮されます.
ショッピングサイトで「ノートパソコン」を検索した結果
採点4.5以上のコメント数は100以上で、広告ではなく三星製品だけを持ち込むコードだ.
このように数行のコードだけで5ページを超えるサイトを簡単に整理することができます.
Webページで使用されるタイトルには異なる意味があります.
このタイトルは簡単にユーザ属性と考えると便利です.
私たちは毎回異なる設備でネットサーフィンをしています.
ユーザーは、どのデバイスを使用してどのオペレーティングシステムでWeb環境に接続するかをどのように見ていますか.
これによって、最近のページはこのタイトルによって異なるサイトを出力します.
what is myuser agentのWebサイトを検索してアクセスし、独自のuser agentを提供します.
Webスクロールとは異なり、scrapingとは、予め取得した情報を引き裂く感覚で、ウェブサイトから取得した情報を加工し、所望の情報のみを取得することをいう.
これにより、情報のインポートと編集が容易になります.
requests, BeautifulSoup
これを使用するには、主に2つのモジュールを使用します.
リクエストはurlを受信する役割であり、BeautifulSoupは、受信したurlコンテンツを簡単に処理するのに役立ちます.
このようにして得られるURLのコンテンツは、そのサイトを構成するhtml、css、javascriptの組み合わせによって構成され、Webから得られるコンテンツの大部分はhtmlにおいてもbodyのコンテンツである.
何ができるのか、ショッピングサイトからショッピングリストを抽出し、直接条件をつけて、自分の望む採点やコメント数を満たす内容だけを出力することができます.
この利便性は、データの増加に伴って効率的に発揮されます.
import requests
from bs4 import BeautifulSoup
for i in range(1, 6):
url1 = "https://www.coupang.com/np/search?q=%EB%85%B8%ED%8A%B8%EB%B6%81&channel=user&component=&eventCategory=SRP&trcid=&traid=&sorter=scoreDesc&minPrice=&maxPrice=&priceRange=&filterType=&listSize=36&filter=&isPriceRange=false&brand=&offerCondition=&rating=0&page="
url2 = "&rocketAll=false&searchIndexingToken=1=4&backgroundColor="
url = url1+str(i)+url2
headers = {'user-Agent' : 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36'}
res = requests.get(url, headers = headers)
soup = BeautifulSoup(res.text, 'lxml')
products = soup.find_all('li' , {'class' : 'search-product'})
for product in products:
title = product.find('div', {'class' : 'name'})
if '삼성' not in title.text:
continue
price = product.find('strong', {'class' : 'price-value'})
star = product.find('em', {'class': 'rating'})
review = product.find('span', {'class': 'rating-total-count'})
ur = product.find('a')
ur = ur['href']
ad = product.find('span', {'class' : 'ad-badge-text'})
if ad:
continue
if (star and review and int(review.text[1:-1]) >= 100 and float(star.text) >= 4.5):
print(f'{title.text} \n가격: {price.text}, 평점: {star.text}, 리뷰수: {review.text}\n 링크 : https://www.coupang.com{ur}\n', '*' * 50)
これらのコードは教室で自分で書いたコードです.ショッピングサイトで「ノートパソコン」を検索した結果
採点4.5以上のコメント数は100以上で、広告ではなく三星製品だけを持ち込むコードだ.
このように数行のコードだけで5ページを超えるサイトを簡単に整理することができます.
headers
Webページで使用されるタイトルには異なる意味があります.
このタイトルは簡単にユーザ属性と考えると便利です.
私たちは毎回異なる設備でネットサーフィンをしています.
ユーザーは、どのデバイスを使用してどのオペレーティングシステムでWeb環境に接続するかをどのように見ていますか.
これによって、最近のページはこのタイトルによって異なるサイトを出力します.
User agent string
what is myuser agentのWebサイトを検索してアクセスし、独自のuser agentを提供します.
Reference
この問題について(Webスクリプト), 我々は、より多くの情報をここで見つけました https://velog.io/@soe8192/웹-스크래핑テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol