9 min read

그 한 줄이 넘겨주는 건 크롤러가 아니라 읽기 권한뿐이다

그 한 줄이 넘겨주는 건 크롤러가 아니라 읽기 권한뿐이다

X에서 흥미로운 글을 발견해 AI에게 요약을 부탁하려고 했다. 링크를 건넸더니 로그인 화면만 읽거나, 본문을 가져오지 못했다고 답한다. 결국 게시물을 복사해서 붙여 넣는다. 이미지가 섞인 긴 글이면 이 과정도 꽤 번거롭다.

그런데 공개 게시물이라면 URL 앞에 한 줄만 붙여볼 수 있다.

원본
https://x.com/사용자명/status/게시물ID

변환
https://r.jina.ai/https://x.com/사용자명/status/게시물ID

이 주소를 브라우저에서 열면 X의 화면 대신 제목, 작성자, 게시 시각, 본문과 이미지 링크가 Markdown 형태로 나온다. HTTP 200과 함께 깔끔하게. 그 결과를 Claude나 ChatGPT에 넣어 요약·번역·주장 추출을 시킬 수 있다.

여기서 대부분 결론을 내린다. 이제 AI가 X를 읽는다고. 그런데 정확히 말하면 아니다. 이 한 줄로 넘어오는 건 크롤러가 아니라 번역기 한 대, 그것도 원래 접근할 수 있던 글 한 편에 한정된 번역기다.

이 기능은 Jina AI의 Reader API다. 웹페이지를 사람이 보는 화면에서 AI가 읽기 좋은 텍스트로 바꾸는 얇은 변환 계층이다. 별도 프로그램 설치도, API 키도 필요 없다. 공개 URL 앞에 https://r.jina.ai/를 붙이면 된다.

직접 확인해봤다

공개 X 장문 게시물 하나로 테스트했다.

curl -L \
  'https://r.jina.ai/https://x.com/mnilax/status/2050261839653556522'

2026년 7월 27일 기준으로 HTTP 200 응답이 왔다. 결과에는 다음 정보가 포함됐다.

  • 게시물 제목과 원본 URL
  • 작성자 이름과 계정
  • 게시 시각
  • 장문 본문
  • 첨부 이미지 URL과 대체 텍스트

로그인하지 않은 상태에서 X 화면을 직접 파싱하는 것보다 결과가 훨씬 다루기 쉬웠다. HTML 태그와 스크립트가 아니라 Markdown이기 때문에 LLM에 바로 넘길 수 있었다.

다만 이 사례의 응답은 약 5,371토큰이었다. 읽기는 쉬워졌지만, 긴 게시물을 그대로 여러 개 넣으면 모델의 컨텍스트와 비용을 빠르게 사용한다. 접근 문제를 해결했다고 컨텍스트 문제가 사라지는 것은 아니다.

내가 쓰는 방식은 세 단계다

첫째, 원문을 먼저 보존한다.

https://x.com/사용자명/status/게시물ID

둘째, Jina Reader로 읽을 수 있는 형태로 바꾼다.

https://r.jina.ai/https://x.com/사용자명/status/게시물ID

셋째, AI에게 URL만 던지지 않고 무엇을 추출할지 명시한다.

아래 X 게시물을 읽고 정리해줘.

1. 핵심 주장 3개
2. 주장을 뒷받침하는 수치와 출처
3. 사실과 작성자의 해석 구분
4. 추가 검증이 필요한 항목

[Jina Reader 결과 붙여넣기]

여기서 중요한 건 요약보다 사실과 해석을 분리하는 것이다. Reader는 읽기 쉽게 바꿔줄 뿐, 게시물의 주장이 사실인지 검증하지 않는다. 접근과 검증은 서로 다른 단계다.

자동화할 때는 헤더 두 개가 유용하다

브라우저에서 한두 번 읽을 때는 접두사만으로 충분하다. 워크플로우에 넣을 때는 응답 크기와 캐시를 제어하는 편이 낫다.

curl -L \
  -H 'X-Max-Tokens: 3000' \
  'https://r.jina.ai/https://x.com/사용자명/status/게시물ID'

X-Max-Tokens는 결과가 지정한 토큰 수를 넘지 않도록 자른다. 긴 게시물 몇 개가 에이전트의 컨텍스트를 잠식하는 것을 막는 안전장치다.

방금 수정된 게시물을 다시 읽어야 한다면 캐시를 우회할 수도 있다.

curl -L \
  -H 'X-No-Cache: true' \
  'https://r.jina.ai/https://x.com/사용자명/status/게시물ID'

Jina AI 문서상 같은 URL은 일정 시간 캐시될 수 있다. 그래서 수정 직후의 글이나 삭제 여부를 확인할 때는 반환된 Published Time과 원본을 함께 확인해야 한다.

이것은 X API의 대체재가 아니다

접두사 하나로 본문이 나오면 크롤러를 얻은 것처럼 느껴진다. 하지만 용도가 다르다. 이 한 줄은 자물쇠를 따는 도구가 아니라 통역사를 옆에 앉히는 일이다. 통역사는 말을 옮겨줄 뿐, 그 말이 사실인지는 통역해주지 않는다.

Jina Reader가 잘 맞는 일은 다음과 같다.

  • 이미 알고 있는 공개 게시물 한 건 읽기
  • 장문 게시물을 Markdown으로 변환하기
  • 요약·번역·주장 추출을 위한 입력 만들기
  • 개인 리서치 노트에 원문과 함께 보관하기

반대로 다음 일에는 맞지 않는다.

  • 특정 계정의 모든 게시물 수집
  • 키워드 기반 실시간 모니터링
  • 팔로워·노출·참여 지표 분석
  • 삭제 게시물이나 비공개 계정 접근
  • 로그인 뒤에 있는 콘텐츠 수집
  • 서비스 수준이 보장된 대량 적재

이런 요구는 공식 X API나 계약된 데이터 벤더의 영역이다. 단일 공개 URL을 읽는 것과 소셜 데이터를 지속적으로 적재하는 것은 전혀 다른 문제다.

실패하는 경우도 정상이다

Reader는 접근통제를 우회하는 도구가 아니다. Jina AI도 사이트가 요청을 차단하면 그 결과를 존중하며, 유료 키가 차단된 사이트를 열어주는 것은 아니라고 명시한다.

따라서 다음 경우에는 결과가 없거나 불완전할 수 있다.

  • 게시물이 삭제됐거나 공개 범위가 제한된 경우
  • X가 비로그인 접근 정책을 바꾼 경우
  • 이미지·영상에 핵심 맥락이 있는데 텍스트만 읽은 경우
  • 인용 게시물이나 스레드의 앞뒤 맥락이 필요한 경우
  • 캐시에 이전 버전이 남아 있는 경우

특히 스레드 전체를 읽었다고 가정하면 안 된다. 반환된 원본 URL과 작성자, 게시 시각을 확인하고, 중요한 주장과 수치는 별도 출처로 다시 검증해야 한다.

다시 생각해보면

이 한 줄이 푸는 문제는 접근(access)이지 신뢰(trust)가 아니다. 접근 장벽 하나를 걷어냈다고 검증 장벽까지 걷힌 건 아니다. Jina Reader는 사이트가 막은 요청을 그대로 존중한다 — 유료 키도 접근 범위를 넓혀주지 않는다. 브라우저에서 잘 읽힌 페이지라도 그 안의 주장이 사실인지는 여전히 사람이 확인해야 한다. 접근이 뚫렸다는 것과 검증이 끝났다는 것은 다른 문장이다.

한 줄의 진짜 가치는 복사가 아니라 연결이다

이 방법의 장점은 복사 한 번을 줄이는 데 있지 않다. X의 공개 게시물을 URL → Markdown → AI 분석 → 노트로 이어지는 파이프라인의 입력으로 바꾼다는 데 있다.

하지만 Reader가 대신하는 것은 읽기까지다. 무엇을 믿을지, 어떤 맥락을 보충할지, 내 지식으로 채택할지는 여전히 사람이 결정해야 한다.

세 가지만 남긴다.

  1. 이 한 줄은 이미 아는 공개 게시물 한 건을 읽는 도구지, 계정 전체를 수집하는 크롤러가 아니다.
  2. 접근 문제가 풀렸다고 검증 문제가 풀린 건 아니다 — 사실과 해석은 여전히 사람이 가른다.
  3. 자동화에 넣을 땐 X-Max-Tokens로 컨텍스트를, X-No-Cache로 최신성을 직접 관리해야 한다.

다음에 AI가 X 링크를 읽지 못한다면, 원문 앞에 이것부터 붙여보자.

https://r.jina.ai/

그 한 줄이면 막혀 있던 읽기는 시작할 수 있다. 다만 읽기가 시작된 것과 검증이 끝난 것은 다른 문장이라는 것만 기억하면 된다.

혹시 지금 팀에서 "읽었다"와 "검증했다"를 같은 뜻으로 쓰고 계신 도구가 있으신가요? 어떤 경우였는지 들려주세요.


참고 자료

검증 메모 (2026-07-27)

항목 판정 근거
공개 X 장문 게시물 변환 ✅ 라이브 확인 HTTP 200, 작성자·게시 시각·본문·이미지 링크 반환
테스트 응답 크기 ✅ 확인 응답 헤더 x-usage-tokens: 5371, 본문 20,539 bytes
익명 사용 ✅ 공식 문서 API 키 없이 Reader 20 RPM(작성 시점 기준)
로그인 콘텐츠 접근 ❌ 미지원 Jina AI 공식 FAQ
접근통제 우회 ❌ 미지원 Jina AI 공식 FAQ: 차단 결과 존중, 유료 키도 접근 범위 확대 아님
X 정책 변화 내성 ⚠️ 미보장 2026-07-27 시점 스냅샷. 향후 재검증 필요

편집 메모

  • 내부 근거: 20260706 - 국내 실시간 SNS 데이터 벤더 조사 (적재·비용) — 단일 URL 읽기와 지속적 SNS 적재의 경계.
  • 2026-07-27 bongho-issue-writer 리뷰 반영: 제목("크롤러 아닌 읽기 권한")·도입 반전 훅·통역사 비유·"다시 생각해보면" 집약 섹션·"세 가지만 남긴다"+참여형 마무리 4곳 교체. 팩트·코드·검증 메모는 원본 유지. 주 프레임을 access≠verification 축으로 통일.
  • 제목 변경으로 파일명 rename 후보(봉호 최종 확정 후). 현재 파일명은 구 제목 유지.
  • 썸네일·Ghost draft 생성·발행은 미수행. 봉호 검토 후 별도 진행.