두 상수와 변수 텍스트를 찾기 나는 AppleScript로 새로운 오전. 사파리를 통해 웹 페이지에서 변수에 문자열을 반환하려고합니다. 대상 문자열은 변경되지만 앞뒤 단어는 정적입니다.AppleScript를
예 : 애플 1293.34 USD
은 "애플"과 "USD"변하지 않는,하지만 내가 원하는 모든 사이의 숫자입니다.
는 요소는 ID가없는 나는 자바 스크립트와 클래스려고 운이 없었어요.
감사합니다. :)
두 상수와 변수 텍스트를 찾기 나는 AppleScript로 새로운 오전. 사파리를 통해 웹 페이지에서 변수에 문자열을 반환하려고합니다. 대상 문자열은 변경되지만 앞뒤 단어는 정적입니다.AppleScript를
예 : 애플 1293.34 USD
은 "애플"과 "USD"변하지 않는,하지만 내가 원하는 모든 사이의 숫자입니다.
는 요소는 ID가없는 나는 자바 스크립트와 클래스려고 운이 없었어요.
감사합니다. :)
먼저 요소를 찾아야합니다.
var element = document.getElementById("elementID");
그런 다음 값을 얻을 :
var value = parseFloat(element.innerText.split(" ")[1])
요소에 ID가 없습니다. – Mark
당신은 컬을 구문 분석을 시도 할 수 있습니다 ...
set myUrl to "http://stackoverflow.com/questions/18633200/finding-variable-text-between-two-constants-with-applescript"
set xxx to do shell script "curl " & quoted form of myUrl & " | grep -o Apple.*USD | sed 's/Apple\\(.*\\)USD/\\1/'"
다음은 텍스트 주어진 AppleScript로 방법입니다. Apple이 본문에서 한 번만 발견된다고 가정하지 않습니다. 그러면 애플이 2 달러 후반에 미화로 따라간 곳을 살펴보고 알맞은 가치를 얻을 것입니다.
set theText to "USD some words Apple USD more words Apple 1293.34 USD some words Apple USD"
set {tids, AppleScript's text item delimiters} to {AppleScript's text item delimiters, "Apple"}
set textItems to text items of theText
set AppleScript's text item delimiters to tids
set theValue to missing value
repeat with i from 2 to (count of textItems)
set thisItem to item i of textItems
try
if word 2 of thisItem is "USD" then
set theValue to word 1 of thisItem
exit repeat
end if
end try
end repeat
return theValue
여기에 무슨 일이 일어나고 있는지 설명해 주시겠습니까? –
기본적으로 스크립트의 시작 부분에있는 "텍스트 항목"은 theText 문자열을 목록으로 바꿉니다. 목록은 단어 "Apple"을 기반으로 구성 요소로 나뉩니다. { "USD some words", "USD more words", "1293.34 USD some words", "USD"} 목록이 있습니다. 그런 다음 반복 루프를 사용하여 목록 항목을 반복합니다. 목록 항목 중 하나의 두 번째 단어가 "USD"이면 내가 찾고있는 것을 찾았습니다. 따라서 목록 항목의 첫 단어를 반환합니다. 세 번째 항목이 내가 원하는 항목임을 알 수 있으며 해당 항목의 첫 번째 단어는 "1293.34"입니다. – regulus6633
이런 종류의 질문을하는 경우 언제든지 추천 할만한 사이트 링크를 삽입하는 것이 좋습니다. – markhunte
누군가가이 부분을 손에 넣기를 바랍니다. –