#ブラウザ操作
import requests
#データ抽出
from bs4 import BeautifulSoup
#待機処理
import time
#データ解析
import pandas as pd
#正規表現
import re
#検索結果から、個別アイテムのURLを保管するリスト
url_list = []
#個別アイテムの情報を入れるdf 4項目を取得する
items_df = pd.DataFrame(data=[], columns = ["URL","品名","価格","説明"])
#検索キーワードを設定
KWD = "ゴジラ+美品"
#○クマの検索一覧URLを作成する
url = "https://fril.jp/s?query=" + KWD
print(url)
#session開始して検索結果htmlをsoupにぶち込む
session = requests.session()
response = session.get(url) #検索一覧ページのhtmlを取得
time.sleep(4)
soup = BeautifulSoup(response.text, 'lxml')
#soupから個別商品URLを集める → url_list へ
items = soup.select('a[class="link_search_image"]')
for item in items:
try:
# 個別ページのリンクか判断する
if re.match("https://item.fril.jp/", item["href"]) != None:
try:
item["title"]
url_list.append(item["href"])
except:
pass
except:
pass
#なぜだか同じ要素が2回重複するので、整理する
url_list = sorted(set(url_list), key=url_list.index)
#items_dfの行数
i = 0
# url_list から各個別URLの中身をサーチ、整理して items_df に入れる
for item in url_list:
#なんせ数が多いので、とりあえず2個だけやってみる
if i>=2:
break
print(i+1,"個目です")
print(item)
#各URLでsession開始
session = requests.session()
response = session.get(item)
time.sleep(2)
soup_02 = BeautifulSoup(response.text, 'lxml')
#品名
try:
name = soup_02.select('h1[class="item__name"]')
print(name[0].text)
name = name[0].text
except:
name = "取得できてないっす"
pass
#価格
try:
price = soup_02.select('p[class="sell-price-fixed"]')
for prc in price:
prc = prc.getText()
prc = prc.replace('\n', '')
prc = prc.replace('¥', '')
try:
prc = prc.replace('送料込', '')
except:
pass
try:
prc = prc.replace('着払い', '')
except:
pass
try:
prc = prc.replace(',', '')
except:
pass
print(prc)
except:
prc = "取得できてないっす"
pass
#説明文
try:
setsu = soup_02.select('div[class="item__description"]')[0].text
a = soup_02.select('div[class="item__description"]')[0]
setsu = setsu.replace('\n商品説明\n', '')
print(setsu)
except:
setsu = "取得できてないっす"
pass
#items_dfにまとめる
try:
#[URL,品名,価格,説明文]
items_df.loc[i] =[item,name,prc,setsu]
i = i + 1
except:
print("できてないっす")
pass
#dfの中身を省略なしで全て表示させる
pd.set_option('display.max_rows', None)
pd.set_option('display.max_columns', None)
print(items_df)
print("\n上手にできました!")
https://fril.jp/s?query=ゴジラ+美品
1 個目です
https://item.fril.jp/e7bcb9c0f41f64333391134ec08197cf
X-PLUS ギガンティック ゴジラ2019 少年リック限定版 極美品 開封済
192000
少年リック限定版 ギガンティックシリーズ ゴジラ2019になります。開封は一度しています。その後はガラス棚で触らずに飾り、エアダスターで定期的に清掃もしていました。目の塗装や特に背鰭の発光表現とその塗装については、量産品とは思えません。
新品、未使用ではありませんが、その分全体をくまなくチェックしております。リック限定版などは、未開封新品でも、一度オークションやフリマサイト等他の方の手に渡ったものは保証がありませんので、致命的な不具合があっても対応はできないそうです。
こちらは開封時、顔の角度、接着具合、目の瞳の向き、塗装の不具合等は問題なかったです。どの方も言われていますが、尻尾の嵌り具合については台座と本体の距離や支える点で詰まりますのでご自身で飾る際に調節できます。
発送は、元箱とそれを包む輸送箱にお入れします。欠品はございません。中の固定針金等も全て開封時のものを使用してお届けします。
2 個目です
https://item.fril.jp/96f315340d2cfebf767d3121c901165c
【最終お値下げ】ニジゲンノモリ ゴジラ迎撃作戦 フィギュア
1600
【今週で出品取り下げます】
迎撃作戦オープン前にやっていたイベントで購入しました。
箱なし。
日焼けや塗装剥げなどない美品だと思いますが見落としありましたらすいません。
URL \
0 https://item.fril.jp/e7bcb9c0f41f64333391134ec...
1 https://item.fril.jp/96f315340d2cfebf767d3121c...
品名 価格 \
0 X-PLUS ギガンティック ゴジラ2019 少年リック限定版 極美品 開封済 192000
1 【最終お値下げ】ニジゲンノモリ ゴジラ迎撃作戦 フィギュア 1600
説明
0 少年リック限定版 ギガンティックシリーズ ゴジラ2019になります。開封は一度しています。そ...
1 【今週で出品取り下げます】\n迎撃作戦オープン前にやっていたイベントで購入しました。\n箱な...
上手にできました!