2011-10-03 5 views
0

저는 어떻게해야 좋을지 또는 전혀 할 수 있는지에 대한 아이디어가 필요합니다.웹 사이트에서 데이터를 가져 오는 것에 대한 아이디어가 필요합니다.

저는 특정 국가 (이 경우 태국)에서 영어를 구사하는 여행자를 위해 맞춤 설정된 웹 사이트를 만들고 싶은 고객이 있습니다. 각기 다른 교통 수단 (버스 & 열차)에는 각각의 정보를 제공하기위한 좋은 웹 사이트가 있습니다. 둘 다 제시하는 데이터면에서 매우 정적입니다 (거의 변경되지 않는 일정). 여기에 정보를 얻을 필요가있는 사이트 중 하나가 있습니다 : train schedules 클라이언트는 사용자에게 시작 및 끝 위치를 검색하고 외부 웹 사이트의 정보를 사용하여 가장 잘 도착하고 경로를 제공 할 수있는 기능을 제공하고자합니다 선택된 운송 수단의 여러 모드에 대한 일정 시간.

내 제한된 경험으로, 나는 외부 사이트의 서버 (API 또는 다른 수단을 통해)에서 원래의 일정 정보를 검색하고 데이터베이스에 정보를 유지하는 방법이 될 것이라고 생각합니다. 필요에 따라 질의를 받는다. 우리의 첫 번째 생각은 어떻게 할 수 있는지를 결정하기 위해 각 당국에 연락하는 것이었지만, 언어 장벽으로 인해 문제가되는 것으로 판명되었습니다.

내 고객은 기본적으로 "화면 스크래핑"을 제안했지만 웹 페이지를 다운로드하고 관련 HTML에 필터링하여 데이터베이스에 저장하는 것이 가장 복잡해 보입니다. 내 걱정은 이러한 정적 사이트의 정보가 정적이어서 데이터가 데이터베이스에 보관되어 페이지가 작성되지 않고 웹 페이지 자체가 변경 (하드 코딩 됨)되어 변경 될 때입니다.

여기에 몇 가지 도움말과 제안을 실제로 사용할 수 있습니다. 감사!

답변

2

페이지 스크랩은 항상 페이지를 작성한 사람의 자비로 IMO에 문제가 있습니다. 콘텐츠가 정적이라면 데이터베이스에 수동으로 데이터를 복사하는 것이 더 쉬울 것이라고 생각합니다. 변경 사항을 최신 상태로 유지하려면 정보를 인쇄 할 때 페이지를 스냅 샷하고 작업이 실행되어 페이지가 스냅 샷에서 변경되었는지 정기적으로 확인할 수 있습니다. 업데이트가 있으면 업데이트 할 이메일을 보냅니다.

위의 방법은 페이지가 너무 크게 변경되면 수동 프로세스로 돌아갈 수있는 일종의 스크린 스캐너와 함께 사용할 수도 있습니다.

궁극적으로 얼마나 많은 노력의 경우는 (비용) 클라이언트는 잘 구조화에있어, 정확성

+0

네 - 당신의 대답은 내가 듣기를 기대했던 것입니다. 물론, 누군가 다른 아이디어를 가지고 있다면, 나는 그것을 고맙게 생각할 것이다. – marky

+0

이 경우에는 cURL 스크립트 (필자와 함께 일한 적이없는)가 도움이 될 수 있습니까? – marky

0

내가 데이터를 동적이라고 말할 수에 대한 부담을 기꺼이입니다. xpath에 익숙한 사람이이 사이트를 긁어내는 것은 어렵지 않습니다.

1

나는 다음 사이트에서 이것을 수행했습니다 : http://www.buscatchers.com/ 그래서 이것은 분명히 할 수 있습니다! 여행 사이트 용 웹 스크 레이 핑 솔루션의 핵심 기능은 스크래핑 과정에서 문제가 발생하면 이메일을 보내야한다는 것입니다. 사이트에서 2 일짜리 창을 사용하므로 디자인 변경시 코드를 수정하는 데 2 ​​일이 걸립니다. 한 두 번만 내 코드를 변경해야하며 매우 쉽게 할 수 있습니다.

몇 가지 예입니다. 간단한 소스 코드가 여기에 있습니다 : http://www.buscatchers.com/about/guide. 프로젝트의 전체 소스 코드는 여기에 있습니다 : https://github.com/nicodjimenez/bus_catchers. 이를 통해 시작하는 방법에 대한 아이디어를 얻을 수 있습니다.

+0

링크 nicodjimenez 주셔서 감사합니다. 그 사람들이 도와 줄거야. – marky

관련 문제