반응형
- [Python] 네이버 카페 게시글 크롤러(feat. 크롬 드라이버 & 셀레니움) 네이버 카페 게시글의 제목과 링크를 크롤링 하기 위한 코드이다.아마 가장 깔끔하게 잘 돌아가는 코드이지 않을까 싶다.많은 분들께 도움이 되었으면 한다. 기본적으로 크롬의 버전과 크롬 드라이버의 버전이 맞아야 오류 없이 돌아간다. 네이버 카페 게시글이다 보니 네이버 계정이 게시글에 접근할 수 있도록 카페에 가입이 되어 있어야한다. * 이 코드에는 일정 시간마다 돌아갈 수 있도록 무한루프를 이용했다.* 또한 크롤링 한 게시글 중 앞서 크롤링했던 게시글이 있다면 중복을 제거한 후에 새로운 게시글을 저장할 수 있도록 한다. - 전체코드import timefrom selenium import webdriverimport csvimport pandas as pdfrom bs4 import BeautifulSoup ..
- [Error] 파이썬 셀레니움 크롬 chrome not reachable 에러 해결 셀레니움을 이용해서 크롬 드라이버로 데이터를 크롤하던 중 중간중간 가끔 chrome not reachable 에러가 발생해서 크롤링이 중단되는 경우가 발생했다. - 에러 메시지 - selenium.common.exceptions.WebDriverException: Message: chrome not reachable 크롬 드라이버 옵션이 많은데 구글링을 하며 이것저것 해본 결과 약 3번 테스트 끝에 며칠이 지나도 에러가 발생하지 않는 것을 찾았다. 아래와 같이 크롬 드라이버의 옵션을 세팅해주면 된다. 1 2 3 4 5 6 7 8 9 10 11 from selenium import webdriver chrome_options = webdriver.ChromeOptions() chrome_options.ad..
- [ML] K-means 클러스터링으로 이미지 분류하기 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124# for loading/processing the images# tensorflow 2.0from tensorflow.keras.utils import load_img from tensorflow.keras.utils import img_..
- [HuggingFace] 허깅페이스 모델 로컬에 다운 받기 허깅 페이스 서버가 가끔 불안정할 때가 있다. 모델을 로딩할 때 허깅 페이스 서버에 접속이 되지 않는 다면 치명적인 에러가 발생할 수 있기 때문에 로컬에 모델을 다운로드하여두고 사용하는 것을 권장한다. 허깅 페이스에서 모델을 로컬에 다운로드하는 두 가지 방법이 있다. 1. 허깅페이스 홈페이지에서 다운로드하기 먼저, HuggingFace 홈페이지에서 각 모델에 대해 Command-line interface, CLI를 이용하여 다운로드를 할 수 있다. 원하는 모델을 찾아서 들어가면 하기 이미지에 노란색 버튼 Use in sentence-transformers을 눌러주면 model repo를 clone 할 수 있는 명령어를 복사하여 CLI에서 입력을 해주면 모델이 다운로드된다. 2. 소스코드를 사용하여 다운로..
- [Error] konlpy import 에러 (AttributeError: module 'tweepy' has no attribute 'StreamListener') 자연어 처리를 할 때 문장을 단어 단위로 토큰화하거나, 형태소 분석을 하는 등 많은 작업이 필요하다. 영어를 처리하는데에는 nltk 패키지, 한국어를 처리할 때에는 konlpy 패키지를 가장 많이 쓴다. 이번에 가상환경을 새로 설정하고 패키지를 설치한 후 konlpy를 import할 때 아래와 같은 에러메시지가 발생하였다. import konlpy >> AttributeError: module 'tweepy' has no attribute 'StreamListener' 해결 방법 위와 같은 오류 메시지가 발생하는 이유는 konlpy 패키지가 tweepy 패키지에 포함된 StreamListener 클래스를 사용하고 있는데 이것을 불러오지 못한 것이다. 오류가 발생한 원인을 아래와 같이 생각해 볼 수 있다...
- [Python] Selenium과 Chrome driver를 활용한 Papago Translation 자동화 파파고 translation API는 21년 6월 30일까지 무료 베타 서비스로 제공되었으나 현재는 유료로 바뀌어있다. 약 5천개의 문장을 번역을 해야하는 상황인데, 일회성으로 사용할 것이어서(과금을 하지 않기 위해..) selenium과 크롬 드라이버를 이용해서 번역을 자동화했다. * NAVER Cloud Papago Translation https://www.ncloud.com/product/aiService/papagoTranslation NAVER CLOUD PLATFORM cloud computing services for corporations, IaaS, PaaS, SaaS, with Global region and Security Technology Certification www.nclo..
- [Pandas] 파일 read할 때 Error tokenizing data 에러 해결법 pandas에서 read_csv 해서 csv 파일을 읽을 때 아래와 같은 오류를 볼 수 있다. Error tokenizing data. C error: Expected ... 오류 내용을 보니 예상되는 필드는 12개여야하는데 9437라인에서 17개가 된다고 보인다. 오류 원인 - 쉼표로 분리될 때 각 라인마다 분리되는 개수가 달라서 발생하는 것이다. 해결하기 전에 분리될 때 개수가 정말 다른지 확인을 해보면 된다. from collections import Counter with open(file_path, encoding="utf-8") as f: lines = f.readlines() print(len(lines)) len_list=[] for _ in range(len(lines)): print(s..
- [TTS] Text-To-Speech 음성 합성을 위한 AI허브 데이터 신청하기 AI 허브에서 제공 중인 감정 음성합성 데이터셋을 이용하여 음성 합성을 진행했다. 데이터 설명 30대 여성 성우 1인, 7가지 감정에 대하여 각각 3,000개 발화, 총 21,000개 음성 파일 데이터 구조 raw 폴더 아래에 acriil_(감정)_(문장번호).raw 파일 존재 해당 파일은 16bit, mono, 16KHz, PCM format의 음성 파일임 txt 폴더 아래에 acriil_(감정)_(문장번호).txt 파일이 해당 pcm 파일의 텍스트 실제 발화 내용(발음)에 따라 텍스트가 수정되었으므로 txt 파일은 감정에 따라 상이할 수 있음 링크: https://aihub.or.kr/opendata/keti-data/definition-tech/KETI-05-001 감정 음성합성 데이터셋 | AI ..
- [HTML] 폼 필수 입력 메시지 변경 방법(form required message customizing) HTML form에서 input이나 select를 필수로 하게 해야할 때가 있다. 태그 내부에 required를 사용해주면 값이 입력이 되지 않으면 알림이 오게 된다. 다음은 HTML 소스와 해당 페이지 결과이다. The select required attribute The required attribute specifies that the user is required to select a value before submitting the form: Choose a car: None Volvo Saab Mercedes Audi 이 때 None으로 되어있는 옵션의 value는 ''로 비어있다. 이 때 select 콤보박스는 required 옵션이 있어서 값이 없는 경우에는 알림이 뜬다. 이 때 따로 메시..
- Translatotron: Direct speech-to-speech translation with a sequence-to-sequence model 리뷰 Paper: https://arxiv.org/abs/1904.06037 Direct speech-to-speech translation with a sequence-to-sequence model We present an attention-based sequence-to-sequence neural network which can directly translate speech from one language into speech in another language, without relying on an intermediate text representation. The network is trained end-to-end, learning to arxiv.org Authors: Ye Jia *, Ron..
- [Python] 유튜브 댓글 크롤러 youtube comment crawl with Selenium, Chrome Driver 유튜브 댓글은 아래로 스크롤을 해야 더 나오기 때문에 html source를 그대로 파싱하기에는 어려움이 따른다. 따라서 chromedriver와 selenium을 이용해서 자동으로 스크롤하고 원하는 만큼 html source를 한번에 긁어다가 파싱 하는 코드이다. https://github.com/Daewooki/WebCrawler Daewooki/WebCrawler Contribute to Daewooki/WebCrawler development by creating an account on GitHub. github.com HTML 삽입 미리보기할 수 없는 소스
- [메타버스] NFT를 만드는 방법과 직접 판매하는 방법 이번 포스트에서는 NFT를 직접 만들고 판매하는 방법에 대해서 알려드리고자 한다. 가장 대표적인 곳인 오픈씨(OpenSea)에서 만드는 방법으로 설명한다. 오픈씨 홈페이지 오픈씨에서 구매하고 판매하는 방법은 일반 쇼핑몰 운영 방식과 유사하다. 쇼핑몰과 동일하게 상품에 대한 이미지를 올리고 가격을 결정하게 된다. 다만, 다른 점은 암호화폐를 기준으로 거래가 된다는 점이고, 회원가입 시 암호화폐 지갑이 필수 요소이다. 추가적으로 오픈씨에서 마켓을 만들 때 일정 수수료가 들어간다. (약 0.02 ETH) 오픈씨에서의 거래는 아래와 같이 총 여섯 가지의 단계로 이루어진다. 1. 이더리움을 산다. 2. 암호화폐 지갑인 메타마스크를 설치한다. 3. 오픈씨에 접속 후 메타마스크를 연결해 회원가입을 한다. 4. 작품을..
반응형