python_apps/crwlers/lib/imarketDetail.py
2023-11-03 14:49:12 +09:00

58 lines
1.5 KiB
Python

import pandas as pd
import requests, bs4, urllib, sys, re, math, logging, os
from datetime import datetime
import subprocess
class imarketDetail:
def __init__(self,prjname,mode,productCode):
self.productCode = productCode
self.prjname = prjname
self.mode = mode
self.url = "https://www.imarket.co.kr/product/MallDisplay.do"
self.bs = self.getHTML()
def parameters(self) :
data = {
'_method': 'Detail',
'sc.prdNo': self.productCode
}
return data
def getHTML(self):
resp = requests.get(self.url, params=self.parameters())
resp.raise_for_status()
resp.encoding='EUC-KR'
html = resp.text
bs = bs4.BeautifulSoup(html, 'html.parser')
return bs
def getImgArray(self):
img = []
if self.mode == "대표":
for i in range(2):
_img = {}
_img['productCode'] = self.productCode
_img['prjname'] = self.prjname
_img['mode'] = self.mode
_img['action'] = 'check'
_img['seq'] = i
if i == 0:
_img['img'] = self.bs.select('div.img_big img#product_img_big')[0].get('src')
if i == 1:
_img['img'] = self.bs.select('meta#ogImage')[0].get('content')
img.append(_img)
if self.mode == "상세":
dimgs = self.bs.select('div.brand_detail img')
for i in range(len(dimgs)):
_img = {}
_img['productCode'] = self.productCode
_img['prjname'] = self.prjname
_img['mode'] = self.mode
_img['action'] = 'check'
_img['seq'] = i
_img['img'] = dimgs[i].get('src')
img.append(_img)
return img