S-DEV/다크웹 (9) 썸네일형 리스트형 다크웹 3 ahmina.fi/address 주소에 있는 Onion 도메인들의 tilte 및 url 주소 파싱하기 import requests from bs4 import BeautifulSoup import time proxies = { "http": "socks5h://127.0.0.1:9150", "https": "socks5h://127.0.0.1:9150" } url = 'https://ahmia.fi/address/' response = requests.get(url, proxies=proxies) html = response.text soup = BeautifulSoup(html, 'html.parser') # URL 링크 for a in soup.findAll("a"): href = a["href"] .. 다크웹2 다크웹 미러링 사이트를 크롤링하여 연결된 URL 들을 파싱 후 DB로 저장 1. 연결된 URL 파싱하기 import requests, sqlite3 from bs4 import BeautifulSoup url = 'https://onions.danwin1210.de/' response = requests.get(url) # 상태 코드 확인 하기 if response.status_code == 200: html = response.text soup = BeautifulSoup(html, 'html.parser') # a 태그안에 href를 사용하고있으면 파싱 for a in soup.findAll("a"): href = a["href"] # 만약에 ? 또는 https 또는 / 로 시작을 하면 넘김 if h.. Tor IP 국적 지정 from stem.control import Controller from stem import Signal import time import requests proxies = { 'http':'socks5://127.0.0.1:9150', 'https':'socks5://127.0.0.1:9150' } # 지정할 국적을 입력 county_code = 'US' ip_response = requests.get("http://ip-api.com/line", proxies=proxies) ip_response.close() for line in ip_response.content.decode("utf-8").split("\n"): print(line) controller = Controller.from_port.. 다크웹 • VPN - 가상 사설망 (Virtual Private Network) - 여러 네트워크를 마치 하나의 네트워크처럼 연결 - Tunneling이라는 프로토콜을 사용하여 네트워크 암호화 • Proxy - 대리인이라는 뜻으로 웹 사이트 접근 시 중간 경유하여 IP를 변조 • SOCKS5 - SOCKS socket Secure - MIPS 컴퓨터 시스템의 시스템 관리자인 데이비드 코블라스에 의해 개발 - 프록시 서버를 통해 클라이언트와 서버 간에 네트워크 패킷을 교환하는 인터넷 프로토콜 - 실제로 SOCKS 서버는 TCP 연결을 임의의 IP주소에 프락시하고 UDP 패킷을 전달하기 위한 수단을 제공 - SOCKS5는 네트워크 트래픽 유형을 구별할 수 없기 떄문에 가장 유현한 서버 프로토콜로 간주되는 확장이다... 데이터베이스 보호되어 있는 글입니다. Web Crowlling - 1 ∙ Selenium - Requests는 단 하나의 웹 요청만 처리한다. - JS, JQuery, Ajax 등 동적인 웹 페이지 처리하기에는 부족하다. - Python에서 동적 웹 테스팅을 위해 개발된 웹 드라이버이다. - Xpath와 CSS, DOM과 같은 다양한 위치 지정자의 위치 제공 - 특정 텍스트박스에 값을 입력 후 클릭 제공 ∙ web browser 열기 from selenium import webdriver browser = webdriver.Chrome() browser.get("https://www.naver.com") input() - 이미지 요청 해제 from selenium import webdriver # 이미지 요청 해제 prefs = { "profile.managed_defau.. 웹 크롤링 기본 개념 ∙ 매크로 - 여러 개의 명령어를 묶어서 하나의 입력으로 처리 - 복잡, 반복되는 작업을 단순화 또는 자동화 - 온라인 게임에서의 자동사냥 등으로 많이 활용 ∙ 웹 프로토콜 이해 - 팀 버나스리 경 : HTTP 설계자이며, 영국의 컴퓨터 과학자이다. - HTTP (Hyper Text Transfer Protocol) > TCP 프로토콜을 사용하며 요청과 응답으로 구성 > 응답을 통해 전송된 HTTP Response Body는 후에 브라우저에서 랜더링 되어 사용자에게 보인다. - HTTP Method 메서드 내용 GET 특정 리소스의 접근을 요청, 오직 데이터를 받기만 가능 POST 서버가 처리할 자료를 보냄, GET으로 보낼 수 없는 자료를 전송하고자 할 때 사용 HEAD GET 요청과 동일한 응답을 요.. 간단한 Flask 웹 서버 • Flask 파이썬 기반으로 작성된 마이크로 웹 프로임워크이다. 간단한 웹 사이트, 간단한 API 서버를 만들 수 있다. from flask import Flask, request #웹 프레임워크 모듈 로드 app = Flask(__name__) # app 변수에 Flask 모듈을 선언 @app.route("/hcm",methods={"GET","POST"}) def hcm(): print(request) return "hcm", 200 if __name__=="__main__": #메인 함수이며, 파이썬 내장 함수 => __name__ 에 의해 시작 app.run(debug=True,host="0.0.0.0",port=8081) - 실습 1 import requests # Header headers .. 이전 1 2 다음