소셜로그인 중단 안내

계정으로 로그인 기능이 2023년 11월 16일 중단되었습니다.

아이보스 계정이 사라지는 것은 절대 아니며, 계정의 이메일 주소를 이용해 로그인 하실 수 있습니다.

▶️ 자세한 공지사항 확인

파워링크 크롤링 파이썬 코드 좀 봐주실수 있나요?

2024.05.31 09:30

뉘뉘뉜

조회수 884

댓글 4


import csv

import requests

from urllib.parse import quote_plus

from bs4 import BeautifulSoup

import pandas as pd


# cp949 에러 발생 시 csv 파일 인코딩을 메모장에서 ANSI로 변경

# file_name: 파워링크 검색 키워드 목록

# find: 탐색할 업체

file_name = "keyword.csv"

find = "위드피아노"


# 파일 열기

f = open(file_name, 'r', encoding="utf-8")

df = pd.read_csv(f)

keywords = df['이름']


# PC 버전 크롤링

data = []


url = 'https://ad.search.naver.com/search.naver?where=ad&x=0&y=0&query='


for keyword in keywords:

base_url = url + quote_plus(keyword)

response = requests.get(base_url)


if response.status_code == 200:

soup = BeautifulSoup(response.content, 'html.parser')

items = soup.find_all(attrs={'class': 'lnk_tit'})


rank = 1

temp = 0


# 검색 결과 확인

for item in items[:10]: # 10위까지만 탐색

serial = item.get_text().strip()

print(f"Keyword: { keyword }, Rank: { rank }, Text: { serial }")


if find in serial:

temp = rank

rank = rank + 1


data.append([keyword, temp])

else:

print(f"Failed to retrieve search results for { keyword }")


# 결과 저장

result = pd.DataFrame(data, columns=['Name', 'Rank'])

print(result)

result.to_csv('result.csv', encoding='utf-8', index=False)


인터넷에서 소스코드 긁어와서 이대로 적용해봤더니 크롤링은 되지만

확장소재에 '추가제목'까지 키워드로 인식해 순위가 정확하지 않습니다!



결과값에서 키워드가 아닌 위에 링크(with-piano.com)로 나오게 하려면 어느 부분을 수정해야 할까요?

개발 부분에 대해서는 잘 모르는지라 신입 마케터 한 명 살려주신다는 생각으로 도와주시면 정말 감사하겠습니다 ㅠㅠ

파워링크크롤링파이썬파이선
목록
댓글 4
댓글 새로고침
로그인 후 더욱 많은 기능을 이용하세요!아이보스 로그인
아이보스 칼럼전체보기