Skip to content

CHICPRO

  • Life Log
  • Cycling Log
  • Photo Log
    • Portrait
    • Landscape
    • Flower
    • Etc
  • Coding Log
  • Information

[Python] 아마존 상품 검색페이지에서 ASIN 정보 수집하기

2017-03-31 by 편리

아마존 사이트에서 fishing rod 라는 검색어로 상품을 검색했을 때 검색된 상품 리스트의 ASIN 정보를 수집하는 코드이다.

# _*_ coding: utf-8 _*_

from bs4 import BeautifulSoup
import urllib
import html5lib
import time

def getSearchItemAsin(keywords):
    headers = {'User-Agent': ' Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:47.0) Gecko/20100101 Firefox/47.0'}

    asins = []
    sleep_time = 0
    sleep_exec = True

    for page in range(1, 21):
        try:
            if(sleep_time > 0 and sleep_exec == True):
                time.sleep(sleep_time)

            values = {'keywords': keywords, 'page' : page, 'ie' : 'UTF8', 'qid' : int(time.time()) }

            data = urllib.parse.urlencode(values)
            data = data.encode('ascii')

            request = urllib.request.Request('https://www.amazon.com/s/ref=sr_ex_n_0', data, headers)
            with urllib.request.urlopen(request, timeout=30) as response:
                the_page = response.read()

            result = BeautifulSoup(the_page, 'html5lib')

            content = result.find_all('li', class_='s-result-item')

            for li in content:
                asin = li.get('data-asin')
                asins.append(asin)

            if(sleep_time == 0):
                sleep_time = 4
            sleep_exec = True
        except:
            sleep_exec = False

    return asins

asins = getSearchItemAsin('fishing rod')

for asin in asins:
    print(asin)

검색 결과 페이지 파싱은 BeautifulSoup 모듈을 사용했다.

Post navigation

Previous Post:

[Python] 아마존 API를 이용한 ASIN 정보 수집

Next Post:

[Python] 아마존 상품검색 페이지의 스폰서 광고 상품 ASIN 수집하기

4 Commments

  1. SJ says:
    2017-10-29 at 21:23

    안녕하세요.
    하나 질문드립니다.

    아마존 api 값을 받아서 해당 페이지에 내용이 특정 조건을 만족하면 그 해당 페이지의 가격과 링크를 뽑고 싶은 상황입니다.

    https://www.amazon.com/gp/aw/d/B072JH4HPT/ref=ya_st_dp_summary?ie=UTF8&psc=1

    해당 상품 내리다 보면 스페셜 오퍼라는 곳이 나오는데그 부분에서 추출입니다.

    아마존 전 상품 기준으로 추출하고 싶은데 혹시 구현이 가능할까왜??

    http://docs.aws.amazon.com/AWSECommerceService/latest/DG/CHAP_MotivatingCustomerstoBuy_Promotions.html

    http://docs.aws.amazon.com/AWSECommerceService/latest/DG/CHAP_MotivatingCustomerstoBuy_Promotions.html

    api 정보도 있는데 솔루션을 못 찾겠네요

    가능하시면 도움 부탁드립니다.

    Reply
    1. 편리 says:
      2017-11-01 at 15:16

      PHP, Python 등은 아마존 API를 사용하기 위한 모듈이 제공됩니다.
      PHP : https://github.com/Exeu/apai-io
      Python : http://python-amazon-product-api.readthedocs.io/en/latest/
      https://pypi.python.org/pypi/python-amazon-simple-product-api

      다른 언어용 API는 구글에서 검색해 보시기 바랍니다.

      Reply
  2. 김태령 says:
    2018-01-27 at 18:05

    좋은 글 감사합니다. 덕분에 아마존 검색결과를 쉽게 저장할수 있게 되었습니다. 흉내내본 결과를 제 블로그에 올려보려고 합니다. 그래도 되겠지요?

    Reply
    1. 편리 says:
      2018-01-27 at 21:45

      안녕하세요, 블로그에 올리셔도 괜찮습니다.

      Reply

Leave a Reply Cancel reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.

Recent Posts

  • SK 세븐모바일 유심 셀프교체
  • php 배열 연산에서 + 와 array_merge 의 차이
  • pcntl_fork 를 이용한 다중 프로세스 실행
  • 아이폰 단축어를 이용하여 주중 공휴일엔 알람 울리지 않게 하기
  • 구글 캘린더 전체일정 재동기화
  • OpenLiteSpeed 웹서버에 HTTP 인증 적용
  • OpenLiteSpeed 웹어드민 도메인 연결
  • WireGuard를 이용한 VPN 환경 구축
  • Ubuntu 22.04 서버에 OpenLiteSpeed 웹서버 세팅
  • 맥 vim 세팅

Recent Comments

  • 편리 on 업무관리용 그누보드 게시판 스킨
  • 임종섭 on 업무관리용 그누보드 게시판 스킨
  • 캐논 5D 펌웨어 | Dslr 펌웨어 업그레이드 방법 82 개의 베스트 답변 on 캐논 EOS 30D 펌웨어 Ver 1.0.6 , EOS 5D 펌웨어 Ver 1.1.1
  • Top 5 캐논 5D 펌웨어 Top 89 Best Answers on 캐논 EOS 30D 펌웨어 Ver 1.0.6 , EOS 5D 펌웨어 Ver 1.1.1
  • 편리 on 워드프레스 애니메이션 gif 파일을 mp4로 변환하여 출력하기
  • 임팀장 on 워드프레스 애니메이션 gif 파일을 mp4로 변환하여 출력하기
  • 편리 on Notepad++ NppFTP 플러그인 수동 설치
  • paul-j on Notepad++ NppFTP 플러그인 수동 설치
  • YS on Windows 10 iCloud 사진 저장 폴더 변경
  • 편리 on Docker를 이용한 Centos7 + httpd + php 5.4 개발환경 구축

Meta

  • Log in
  • Entries feed
  • Comments feed
  • WordPress.org
© 2025 CHICPRO | Built using WordPress and SuperbThemes