2011-04-08 6 views
0

필자는 최근에 내 마음을 아프게하는 과제를 맡았습니다. 우리 클럽은 사이트를 방문하여 우리가하는 일을하는 사람들을 찾고 싶어합니다.사이트에서 특정 정보를 구문 분석/스크래핑/크롤링 할 수 있습니까?

현재 사용중인 방법은 위키피디아로 이동하여 각 도시 목록을 가져 와서 (예 : List of cities in alabama) 각 사이트 (예 : meetup, facebook, craigslist 등)로 이동 한 다음 각 각 사이트의 모든 사이트에 대한 키워드 (예 : 쿵푸, 무술 등)

이렇게 460 개 도시 X 5 개 사이트 X 5 개 키워드 = 11500 개의 서로 다른 검색 = 마음이 무감각한 단조 로움.

더 쉬운 방법이 있기를 바랬습니다. 대답을 검색 할 때 나는이 사이트 (building a web spider)를 가로 질러 왔고 이것이 길일지도 모른다고 생각했다.

질문 : 나는 해당 사이트 또는 다른 사이트에서 일부 웹 스파이더를 수정하여 해당 검색을 수행하고 키워드에 대해 true를 반환하는 결과 만 반환 할 수 있습니까? 나는 bash 스크립트, 파이썬, 루비 또는 다른 언어가 상관 없다.

어떤 것이 불분명한지 알려주고, 약간 자세한 정보가 있으면 미안합니다.

+0

Google을 사용할 수 없습니까? –

+0

당신이 말하는이 "google"에 익숙하지 않은 Im ... 모든 진지한 점에서 Google 검색은 내가 필요한 모든 것을 찾지 못한다. 심지어 내 목적지에 도달하기 위해 11500 번을 검색하는 동일한 과정을 수행했다. 또한 나는이 시련에 대한 어떤 것을 배우고 싶다. 그래서 내가 어떤 종류의 코드를 찾기를 바랬다. – Guy0203

+0

아마도 치료법을 쓸 수 있을까요? http://scrapy.org/ – juanchopanza

답변

0

저는 이처럼 간단한 웹 크롤러를 만들지 않을 것입니다. 나는 무엇을 충분하기에 생각 : 파일의 도시

  1. 가져 오기 목록 말 cities.txtURL 패턴이 사이트에서 검색하는 데 사용하는지 알아
  2. 그림 (수동 또는 그림 뭔가 밖으로 드리겠습니다)를 필요.
  3. 모든 검색을 수행하고 결과를 저장하는 쉘 스크립트를 작성하십시오.

데이터 수집 부분은 wget으로 간단해야 하드 드라이브에 (컨텐츠 제공자의 각 XPath의 경기 결과 예를 들어 그림을, 그들과 함께 검색) 데이터를 분석 :

for city in `cat cities.txt`; do 
    for keyword in 'kung-fu' 'martial arts'; do 
    wget http://searchsite1.com/?search=${keyword}&city=${city} 
    wget http://searchsite2.com/groups/search?q=${keyword}+${city} 
    done 
done 

다른 부분은 독자적으로 파악해야합니다. 이것은 내가 그것을 할 수있는 방법이다, YMMV.

+0

정말 고마워요. 이제 awk와 gsub를 사용하는 방법을 알아 내야합니다. – Guy0203

관련 문제