• 목록
  • 아래로
  • 위로
import requests, pause
from datetime import datetime

old = 999
with requests.Session() as s:
    for i in range(0, 10):
        now = datetime.now()
        pause.until(datetime(now.year, now.month, now.day, now.hour, now.minute, now.second + 1, 100000 * i))
        print(now.hour, now.minute, now.second + 1, 100000 * i, sep=":", end=" // ")
        rsp = s.get('URL을 입력하세요')
        server_t = rsp.headers['Date'].split(' ')[-2]
        print(server_t)
        this = int(server_t.split(':')[-1])
        if old - this == -2:
            print('Difference : ', end='')
            print(now.second + 1 - this, 100000 * i, sep=':')
        old = this

 

 

아직 실험 단계의 스크립트로서 특정 서버와 내 PC 간의 시간 차이를 대략 1/10초의 오차로 구할 수 있습니다.

 

HTTP Request 헤더의 Date 항목을 이용하였습니다.

 

물론 서버 시간을 보다 정확하게 구하려면 ping도 고려해야겠지만,

 

어차피 티켓 예매, 수강 신청 등에서는 ping을 반영한 시간 차이가 의미를 지니기 때문에 

 

이 정도로 작성해도 대략 맞아떨어지는 것 같습니다.

 

다만 (i) 내 PC와 특정 서버 간의 시간 차이가 매우 작은 경우, 또는 (ii) ping이 아주 큰 경우에는 위와 같은 방법이 부정확할 것 같네요.

 

보다 정확한 측정을 위한 조언을 부탁드릴게요! ^^

 

작성자
이니스프리 119 Lv. (0%) 2249040/115200000EXP

Make StudyForUs Great Again!

 

CSVpuymXAAAVVpd.jpg

댓글 0

권한이 없습니다.
번호 제목 글쓴이 날짜 조회 수
공지 [작업 완료] 설 명절 맞이 서버 업데이트 안내 3 마스터 마스터 24.02.11.17:21 1044
공지 [중요] 호스팅 만료와 관련하여 일부 수칙이 변경됩니다. 4 마스터 마스터 23.01.14.02:23 4715
554 [Python] cannot import name 'TypeAliasType' from 'typing_extensions' 에러 대응방법 new 이니스프리 이니스프리 15시간 전23:54 18
553 [VSCode] 1개의 OS에 VSCode 여러 개를 설치 및 구동하기 이니스프리 이니스프리 24.05.26.05:09 49
552 [Python] 리스트에 중복된 원소가 있는지 확인하는 함수 이니스프리 이니스프리 24.05.22.20:21 82
551 [Python] random 함수가 계속하여 동일한 결과를 출력할 때 해결방법 이니스프리 이니스프리 24.05.15.19:32 117
550 트래픽 절감 관련 모 커뮤니티 사이트의 회의 결과 이니스프리 이니스프리 24.05.15.16:51 130
549 [Python] SSL: CERTIFICATE_VERIFY_FAILED에 대한 대처 방법 (2) 이니스프리 이니스프리 24.05.05.21:04 115
548 [KT] 오피스넷 가정 설치 관련 이니스프리 이니스프리 24.05.05.00:28 130
547 [Python] 쿠팡 크롤링할 때 소소한 팁 이니스프리 이니스프리 24.05.02.21:50 261
546 [Python] dictionary 2개의 평균을 구하여 내림차순 정렬하기 이니스프리 이니스프리 24.04.21.17:29 197
545 [Python] 독일어, 스페인어, 체코어 등 철자를 영문 알파벳으로 전환하기 이니스프리 이니스프리 24.04.21.17:15 145
544 [Python] Tabulate 모듈로 작성한 테이블을 파일로 저장할 때 에러가 발생하는 경우 이니스프리 이니스프리 24.04.20.23:45 122
543 [Python] 변수의 이름을 반환하는 함수 이니스프리 이니스프리 24.04.20.23:29 147
542 [Python] Table을 쉽게 만들어주는 모듈x2 이니스프리 이니스프리 24.04.18.22:04 138
541 [Python] 정규식을 사용하지 않고 웹페이지의 자바스크립트를 파싱 이니스프리 이니스프리 24.04.17.21:12 166
540 [Python] \u3000을 공백으로 치환하기 이니스프리 이니스프리 23.10.29.14:51 276
539 [디지털 포렌식 전문가] 제21회 실기 시험 일정 image 이니스프리 이니스프리 23.10.29.01:39 191
538 [Python] Ordered Set 이니스프리 이니스프리 23.09.19.20:24 200
537 [Python] CGV 예매 관련 크롤링 (개요) 이니스프리 이니스프리 23.08.22.21:10 424
536 [Python Requests] multiple cookies를 다루기 - "There are multiple cookies with name python" 에러 처리 이니스프리 이니스프리 23.08.22.01:40 280
535 [Python] How to send BOLD text with Telegram bot 이니스프리 이니스프리 23.08.10.19:51 215