2017-10-31 7 views
2

저는 경제학 대학원 학생이며 현재 Google Scholar와 관련된 연구 프로젝트를 진행하고 있습니다. 경제 학자들은 대개 Stata를 사용하지만 R을 통해 Google 학술 검색에 대한 액세스가 쉬워 졌기 때문에 지난 주 R이 어떻게 작동 하는지를 배웠습니다. 말할 필요도없이 나는 초급자이고 실제로 이해할 수없는 많은 것들이 있습니다.이름 정보를 기반으로 한 Google 학술 검색 ID

나는이 목록에서 경제학자 목록을 웹 스크랩하여 무작위 샘플을 생성 할 수 있었다. 이 학자에 관한 Google 학술 정보를 얻고 싶습니다. 그렇게하기 위해 나는 도서관 '학자'를 사용할 계획이다.

제 문제는 '학자'가 Google 학술 검색 ID를 묻는 것입니다. 경제학자의 이름 만 가지고 있으므로 ID를 검색하고 싶습니다.

나는 기본적으로 각 경제학자에 대한 Google 학술 검색 쿼리를 수행하려고합니다. https://scholar.google.fr/scholar?hl=fr&as_sdt=0%2C5&q= "경제학자 이름"및 html 코드에서 Google 학자 ID를 찾으십시오. 나는 경제학자 "임마누엘 사 에즈"를 시도

가 시작하기 : https://scholar.google.fr/scholar?hl=fr&as_sdt=0%2C5&q=Emmanuel+Saez&btnG=

관련 CSS 노드는 ".gs_rt2"내 코드의 모양 있도록 :

page <- read_html("https://scholar.google.fr/scholar?hl=fr&as_sdt=0%2C5&q=Emmanuel+Saez&btnG=") 
text <- html_nodes(page, ".gs_rt2") 

개체 "텍스트 = 사용자 "":

[1] <h4 class="gs_rt2"><a href="/citations?user=qZpr_CQAAAAJ&amp;hl=fr&amp;oe=ASCII&amp;oi=ao"><b... 

난 그냥 마지막 부분 누락 어떻게 R이 한 지 12 문자 코드를 선택하는 알 수 있습니까를 그 같이 보입니다 "?

꽤 분명해야하지만, 어떻게해야 할지를 알 수 없습니다. 누군가가 나를 도울 수 있다면 그것은 위대 할 것입니다.

감사합니다, G. 고티에

+1

어쩌면 일부 정규식을 사용할 수 있습니까? '? gsub' 또는'? regexec'을보십시오. 어쩌면 패키지'stringr' ('? str_sub')의 부분 문자열 메소드도 함께 올 수 있습니다. –

+4

[R의 다른 두 문자열 사이에서 문자열 추출하기] 가능한 복제본 (https://stackoverflow.com/questions/39086400/) 서로 다른 두 문자열을 추출하는 문자열) –

답변

1

가장 간단한 방법은 아마 정규 표현식이다. 다음과 같이하십시오 :

user_code <- sub(".*user=([A-Za-z_]+)&.*", "\\1", text) 

여기서 "\ 1"은 괄호 안에있는 내용에 대한 역 참조입니다. 자세한 내용을 보려면 ?regexp?sub을 시도하십시오.

+0

고맙습니다. 그것은 잘 작동합니다. 나는 'sub'와 'regexp'를 파헤 칠 것이다. –

+0

좋아요. 어쩌면 당신은 내 대답을 받아 들일 수 있습니다. – dash2

+0

물론, 내가 할 수 있는지 몰랐다! 다시 한번 감사드립니다. –