2014-06-23 3 views
0

현재 약간의 Firefox 확장 프로그램을 개발하려고합니다.백그라운드에서 JS를 통해 URL로드 및 구문 분석

세부 사항 : 나는 사이트 dota2lounge.com에서 증기 커뮤니티 시장에서 스팀 아이템의 현재 상품을 표시하고 싶습니다. 내 생각은 dota2lounge.com의 HTML 코드에서 항목 이름을 읽는 Firefox 확장을 통해이 작업을 수행하는 것이 었습니다. 비아 JS를 통해 상품 커뮤니티 이름을 검색하고 현재 상품을 분석하고 싶습니다. 이 작업은 사용자가 추가 조치를 취하지 않고 추가 탭/창을 열지 않아도 이루어져야합니다.

자바에서 나는 단지 사이트를 변수에로드하고 함께 작업 할 것이다. JS (또는 Jquery)로 어떻게하면됩니까? 또는 firefox의 addon-sdk에서이 문제를 해결할 수있는 더 좋은 방법이있을 수도 있습니다.

모든 의견과 힌트를 환영합니다.

+0

내가 크로스 사이트 방지 자바 스크립트에서 외국 도메인에 액세스 할 수 없습니다 확신합니다. XMLHttpRequest를 사용하여 URL을로드하고 직접보십시오. – jangxx

+1

나는 csgolounge.com의 소스 코드를 확인하고 그들이 어떻게하고 있는지 확인했다. 또한이 라이브러리를 발견했습니다. (언젠가는 놀고 싶었습니다) https://github.com/eknowles/node-steam-tradeoffers –

+0

@ChristopherMarshall 확장에서 nodejs 코드를 사용할 수 없습니다. – jangxx

답변

3

Add-on SDK를 사용하면 매우 간단합니다. 요청 모듈은 괜찮 동안 https://developer.mozilla.org/en-US/Add-ons/SDK/High-Level_APIs/request

  • , 당신이 수행 할 수 있습니다 무엇을 : 요청 모듈은 다른 사이트에 요청을 할 수

    1. : 여기를 보라 모듈의 목록입니다 대신 스팀 사이트에서 정보를 얻으려면 jQuery를 사용하여 사이트를로드하고 jQuery를 사용하여 쉽게 정보를 추출하는 페이지 작업자 모듈을 사용하십시오. 이 정규식을 사용하는 것보다 훨씬 좋네요. 코드는 다음과 취지를 같이 보일 것입니다 :

    https://gist.github.com/canuckistani/6c299c812bbe582d9efb

  • +0

    2 번째 aproach suite가 가장 좋을 것 같습니다. 그 중 하나가 올바른지 알게 해주세요 : Add-On Script에서 현재 사이트의 특정 데이터를 수집 할 수 있습니다. 이제 컨텐트 스크립트 (이 경우에는 작업자)와 수집 된 데이터를 호출 할 수 있습니다. 작업자는 증기 커뮤니티 시장에 요청을하고, 원하는 정보를 수집하고 Port Modul을 통해 내 애드온 스크립트에 메시지를 보냅니다. 이 올바른지? – jig

    +1

    나는 그렇게 생각한다. 작업자를로드 할 수있는 보이지 않는 브라우저로 생각하고 스크립트를 삽입하고 정보를 수집 할 수 있습니다. – canuckistani

    +0

    감사합니다. 나는이 환경에 완전히 새롭기 때문에 페이지 개발자와 Firefox 개발자 가이드를 통해 다른 길을 읽으려고 노력할 것입니다. – jig