Applescript Help: Search for text in Safari DOM tree
Im trying to make a script really similar what was asked here: Re: Find text in webpage and email notification applescript/automator Except instead of searching the "source code" of the page, I want the script to search the "DOM tree" for the page.
To summarize, I am trying to make a script that loads a safari page, searches for a particular text in the DOM Tree, and if found will send me an email.
Here is the code from the other thread I referenced:
on idle
set pagURL to "http://page.url.com?whatever"
if application "Safari" is not running then
quit
return
end if
tell application "Safari"
set URL of document 1 of window 1 to "http://your.web.address/"
delay 5
-- delay to let page load.
if source of document 1 of window 1 contains "search text" then
my sendAMail()
end if
return 900 --fifteen minutes
end tell
end idle
on sendAMail()
tell application "Mail"
set theMess to make new outgoing message at end with properties {sender:"your name", subject:"some subject line", content:"The message you want to send to yourself", visible:true}
tell theMess
make new to recipient at end of to recipients with properties {address:"[email protected]"}
end tell
-- send theMess
end tell
end sendAMail
Any help would be appreciated!
For the URL you quote as an example (http://www.sislands.com/coin70/week2/NestedLoops1.htm), using text instead of source worked for me:
if text of document 1 of window 1 contains "1 2 3 4" then
another example:
if text of document 1 of window 1 contains "10 12 14 16" then
Note a double space between single digits (1 2 3 4) and a single space between double digits (10 12 14 16) is required for a match as per the table format:
Any full line:
if text of document 1 of window 1 contains "for (i = 1; i <= 10; i++) { // when i = 10" then
or partial line works:
if text of document 1 of window 1 contains "; i++) { // when i = 10" then
Similar Messages
-
How do I search for text on safari web pages, How do I search for text on safari web pages
How so I do a text search on a safari web page? Please help
When you're on the page you want to search tap the URL bar to turn it blue. Tap the x so it disappears. Type the word you want to search for, at the bottom of the suggestions is find on page, tap that. Your high-lighted text should appear.
-
Problems with searching for text in Preview
Hi, everyone...I'm hoping someone can help me out with this. I have an old MBP with Tiger installed and Preview 3.0.9. I have attempted to search for words in numerous PDF files and the search function NEVER brings up the words even when I know the words are contained in the document. I read the Preview manual and I know I'm following the correct procedures in searching for text, but nothing seems to work. Can anyone help me out with what I may be doing wrong? Thanks!
I can't picture what you could possibly be doing wrong, there's not much choice in the matter.
The only time Searching fails here is if the text in the PDF is actually only a graphic of the text.
Are these PDFs that you made? If so, what APP?
If you down load this PDF, does Search work on it?
http://web.fastermac.net/~bdaqua/TestText.pdf -
I have an 800 page pdf document to index and so far I have a script that will search for a list of keywords. But the text has large sections of code in a different font, and I think we would like to generate an index of just code examples. Is there a way to search for text of a given font in applescript? Something like
set theSel to find text theText
if the font of theSel is "Times"
write to file, etc.Please do send a page, I might be able to spot where the font problem is coming from - but no guarantee Address is in my profile.
You asked about the script formatter. red_menace of this forum wrote the script I use. To use it, you copy the script that you want to format to the clipboard and run the formatter. This then places the marked-up text in the clipboard so that you can paste it into the forum page.
<pre style="
font-family: Monaco, 'Courier New', Courier, monospace;
font-size: 10px;
margin: 0px;
padding: 5px;
border: 1px solid #000000;
width: 720px; height: 340px;
color: #000000;
background-color: #FFDDFF;
overflow: auto;">
script formatter - formats the clipboard text for forum posting
last reviewed January 19, 2009 red_menace[at]mac[dot]com
Input: text read from the clipboard
Output: formatted text copied to the clipboard
set AppleScript's text item delimiters to " "
-- some constants and switches
property TextColor : "#000000" -- black (see http://www.w3schools.com/tags/ref_colornames.asp)
property BackgroundColor : "#FFDDFF" -- a light plum/purple
property BorderColor : "#000000" -- black
property TheWidth : "width: 720px; " -- a width attribute (deprecated in HTML 4.01)
property UseWidth : true -- use the width attribute?
property LineCount : 25 -- the number of lines before including the height attribute
property TheHeight : "height: " & ((LineCount * 13.6) as integer) & "px; " -- a maximum height for the <pre> box
property Emphasize : false -- emphasise (bold) the script text?
property UseURL : false -- include a Script Editor message link?
property AltURL : false -- use an alternate URL encoding?
property ToolTips : {¬
"this text can be pasted into the Script Editor", ¬
"this text can be pasted into an Automator 'Run AppleScript' action", ¬
"this text can be pasted into an Automator 'Run Shell Script' action", ¬
"this text can be pasted into a HTML editor", ¬
"this text can be pasted into a text editor", ¬
"- none -"}
property TooltipDefault : {item 1 of ToolTips} -- keep track of the last tooltip used
property TempFile : "Script_Formatter_TempFile" -- a temporary work file
try
-- write the clipboard to the temporary file
set TheClipboard to (the clipboard) as text
if TheClipboard is in {"", space, tab, return} then return -- clipboard is (basically) empty
set MyOpenFile to open for access ("/tmp/" & TempFile & ".txt" as POSIX file) with write permission
set eof of MyOpenFile to 0 -- empty any previous temp file
write TheClipboard to MyOpenFile
close access MyOpenFile
if UseURL then
-- encode URL (see http://developer.apple.com/documentation/Darwin/Reference/Manpages/man1/pydoc.1. html)
do shell script "/usr/bin/python -c 'import sys, urllib; print urllib.quote(sys.argv[1])' " & quoted form of TheClipboard
-- add a link wrapper
set URLtext to "applescript://com.apple.scripteditor?action=new&script=" & the result
if AltURL then -- use an alternate URL encoding
set URLtext to "Click here to [url=" & URLtext & "]open this script in the Script Editor[/url]:<br />"
else -- use HTML anchor tag
set URLtext to "Click here to <a href=\"" & URLtext & "\">open this script in the Script Editor</a>:<br />"
end if
set PromptText to ((count URLtext) as text) & " URL and "
else
set {URLtext, PromptText} to {"", ""}
end if -- UseURL
-- convert to HTML (see http://developer.apple.com/documentation/Darwin/Reference/ManPages/man1/textutil .1.html)
do shell script "cd /tmp/; /usr/bin/textutil -convert html -excludedelements '(html, head, title, body, p, span, font)' -encoding US-ASCII " & TempFile & ".txt"
-- fix up some formatting and add a pre wrapper (see http://www.w3schools.com/tags/default.asp)
set HTMLtext to rest of paragraphs of (read ("/tmp/" & TempFile & ".html" as POSIX file))
if (count HTMLtext) is less than LineCount then -- skip the height attribute
set Height to ""
else
set Height to TheHeight
end if
set HTMLtext to FixCharacters from (HTMLtext as text) -- additional character encodings
if UseWidth then
set Width to TheWidth
else
set Width to ""
end if
if Emphasize then set HTMLtext to "<strong>" & HTMLtext & "</strong>"
set HTMLtext to "<pre style=\"
font-family: Monaco, 'Courier New', Courier, monospace;
font-size: 10px;
margin: 0px;
padding: 5px;
border: 1px solid " & BorderColor & ";
" & Width & Height & "
color: " & TextColor & ";
background-color: " & BackgroundColor & ";
overflow: auto;\"
title=\"\">
" & HTMLtext & "</pre>
-- assemble everything on the clipboard
set TheResult to choose from list ToolTips ¬
with title "Script Formatted" with prompt PromptText & ((count HTMLtext) as text) & " HTML characters will be placed on the clipboard (plus the following ToolTip):" default items TooltipDefault OK button name "OK" cancel button name "Cancel" with empty selection allowed without multiple selections allowed
if TheResult is false then -- cancel button
error number -128
else -- add the selected title attribute (tooltip), if any
set TooltipDefault to TheResult as text
set Here to (offset of " title=" in HTMLtext) - 1
set There to (offset of ">" in HTMLtext) - 1
if TheResult is in {{}, "- none -"} then -- no tooltip
set the clipboard to URLtext & (text 1 thru (Here - 1) of HTMLtext) & (text (There + 1) thru -1 of HTMLtext)
else
set the clipboard to URLtext & (text 1 thru (Here + 9) of HTMLtext) & TheResult & (text There thru -1 of HTMLtext)
end if
end if -- TheResult is false
on error ErrorMessage number ErrorNumber
log space & (ErrorNumber as text) & ":" & tab & ErrorMessage
try
close access MyOpenFile
end try
if (ErrorNumber is -128) or (ErrorNumber is -1711) then -- nothing (user cancelled)
else
activate me
display alert "Error " & (ErrorNumber as text) message ErrorMessage as warning buttons {"OK"} default button "OK"
end if
end try
to FixCharacters from TheText
fixes (converts) formatting characters used in some message forums (see http://www.asciitable.com/)
parameters - TheText [text]: the text to fix
returns [text]: the fixed text
-- this list of lists contains the characters to encode - item 1 is the character, item 2 is the HTML encoding
set TheCharacters to {¬
{"!", "!"}, ¬
{"*", "*"}, ¬
{"+", "+"}, ¬
{"-", "-"}, ¬
{"[", "["}, ¬
{"\\", "\"}, ¬
{"]", "]"}, ¬
{"^", "^"}, ¬
{"_", "_"}, ¬
{"~", "~"}}
set TempTID to AppleScript's text item delimiters
repeat with SomeCharacter in TheCharacters
if item 1 of SomeCharacter is in TheText then -- replace
set AppleScript's text item delimiters to item 1 of SomeCharacter
set the ItemList to text items of TheText
set AppleScript's text item delimiters to item 2 of SomeCharacter
set TheText to the ItemList as text
end if
end repeat
set AppleScript's text item delimiters to TempTID
return TheText
end FixCharacters
</pre> -
Searching for text containing diacritics (accents)
iTunes doesn't find titles when searching for texts containing diacritics (like "âàéêèëîïôöûùü", in french). Even when a song title is copied and pasted in the search field, it is still not found. I get the same problem when I call the search from AppleScript. When searching for only the part before or the part after the diacritic, then iTunes does find something. I think it is a bug. Is there someone that knows what to do?
Too bad the problem is back with the new iTunes 8.0. It is quite annoying since I got a lot of entries with those diacritics...
-
Editor: Annoying pop-up for choosing main programs when searching for text
Hi,
We're upgrading to ECC60 and are getting frustrated when searching for text in a source code within the ABAP editor.
For every include contained in the main program you are searching in there is a pop-up asking to choose the main program for that include.
This can get crazy when searching in a standard SAP program such as SAPMV45A. You'll have to process through 30-40 of these pop-up windows before your search results appear. I each pop-up you have to scroll though dozens of main programs to find the one you are doing the search in.
Can this be turned of somehow to have the search functionality work as it did in previous version, where the Editor knows that the program you are launching the search from is the main program you want the results from?
Thanks,
PeterHI Peter
Please check if program: <b>RPR_ABAP_SOURCE_SCAN</b> can help you...
Regards
Eswar -
Dreamweaver cs5.5 opening files after searching for text code
This just occured this afternoon. I was working on a page and when I went to search for text in the code (ie "/head") dreamweaver would open a previously opened page. In other words I was working on "walk.php" and when I did the search for "/head", dreamweaver opens "add_rsurvey_data.txt". I know what the 2nd file is but I haven't opened it in months. It's just a temp data file that my partner sent me.
I'm using cs5.5
Adobe will not help me.
Thanks
GlennWe don't get attachments from email replies here. You would need to use the Camera icon in the actual web forum to a post screen shot.
If this began yesterday, try deleting your Cache & restarting DW.
http://forums.adobe.com/thread/494811
Nancy O. -
"Search for text" Zooms when number keys pressed. Expecting it to FIND text
For months I have been using (&relying on) the "search for text when I start typing " feature.
I am a school teacher & this helps me to search for students & record scores in an online grading program.
The "search for text when I start typing feature" stopped working two days ago.
Before, whenever I typed the "Find" box immediately opened up, searched the screen,
and highlighted whatever I had just typed. Now, when I enter a "1", "2" , "6" , "9" or "0" (zero)
the find box does not come up- so this disrupts all the grade recording process for me.
Instead, when I type in 6 or 9 (it zooms in the screen instead), 0 (it zooms out instead) and I cannot tell what happens
when I type in 1 or 2 (nothing appears to happen- but no "Find" box comes up.
Edit by a moderator to improve the title
(As suggested by a contributor, flagging the post)
Was
*The Firefox "search for text when I start typing feature" has just stopped working correctly
Now
*"Search for text" Zooms when number keys pressed. Expecting it to FIND text
~J99
I tried restarting Firefox and turning on/off the Advanced feature ( "search for text when I start typing feature")
but it did not help. I am using a Mac. I also tried using an external keyboard/keypad but the exact same
results occur.
Please help!
Thanks,
BarryThe keyboard shortcut for resetting the zoom level is Command+0, so seeing that kind of response implies that Firefox is misreading the state of the Command key, thinking it is stuck down. Usually tapping the key numerous times will send a signal to all programs that the key has been released (at least on Windows).
On the other hand, in that case, Command+6 should jump to the sixth tab in the current window, it shouldn't change the zoom level. So... hmm...
In case a component of the OS has malfunctioned, have you already tried shutting down the system completely and then starting it up again? -
I have checked “Search for text when I start typing” but it is not happening since your latest update. This is very important to me as I keyboard - not use the mouse. What can I do? Also, before the last update I could leave the window (alt+tab) and return and just type and it would type it is the search box. Now I have to take my hand off the keyboard and get the mouse three times for every search, slowing my work way, way down. What other flag do I need to put this back the way it was? Should I also remove the “Automatically check for updates” so that this will not happen again? Please, please help.
Hi CynthiaP,
You should look at the article [http://kb.mozillazine.org/Preferences_not_saved Preferences not saved]. It may just be an issue with the pref file!
Hopefully this helps! -
How do I search for text on a webpage?
I have found some answers for mobile devices, but how do I search for text on a webpage for my notebook?
You will find command F is fairly universal.
good computing -
Spotlight search for text messages not working
After upgrading to ios8, I discovered that the spotlight search for text messages only "sees" my last two texts but not any of the others I have on my phone. These are all active conversations, not deleted messages. Any ideas how to fix? Thanks.
I Fixed mine by going to setting->General->Sptolight and unchecking "messages", exiting the function then returning and rechecking "messages".
-
Search for text when I start typing, I want to disable it but it doesn'
I chat in chat rooms from time to time and I find it bothersome when every time I start to type the computer starts to search for text. I have gone to firefox options and it is not enabled but search it does. Can you suggest a way that I can stop that from happening?
Thank you
SherrieSee:
*http://kb.mozillazine.org/Find_bar_opens_when_typing_in_textbox
*searchhotkeys: http://nic-nac-project.de/~kaosmos/index-en.html#searchkeys -
Cannot search for text in a PDF in Safari
I was previously able to use the "search in this document" when viewing a PDF in Safari. This no longer works and I always get "No Matches" when the word is actually in the PDF document. I installed the Chrome app and its "Find in Page" function is grayed out on PDFs so I can't search a PDF for text using it either.
I have uninstalled Adobe Reader and reset all iPhone settings under General and it still doesn't work. I am using iOS 8.1.2 and iPhone 6. Thanks.I noticed the same problem too and have yet to find a solution. This was an issue with iOS 8.1.1: http://forums.macrumors.com/showthread.php?t=1814335&page=2 (scroll down to posting #42)
-
Search for text in PDF by VBA with only Adobe Reader installed
My problem is widely known and frequenty posted, for instance:
"Can anyone help me to open and search for a specific text string in a PDF document, return a true or false indicator (and nothing else)?"
The answers mostly refer to and include
Set gApp = CreateObject("AcroExch.App")
which, as I understand, works only with a certain level of Adobe Acrobat being installed.
My question now:
I want to give this type of functionality (via an MSAccess Form, i.e. populate a ComboBox with PDF filenames which answer YES to certain text occurences) to - say 20 - users in my company who have Adobe Reader 9.1 installed and not more.
Bying this number of Adobe Acrobat licenses for just this purpose would be a heavy overkill which I just can't afford.
Any suggestions? many thanks in advance.Now we would like to search in this PDF binary for an special text or string to use them for changing filename. Is there any way to do that?
Based on your posting it sounds a bit like you're doing ABAP processing. However, I'll ignore that for now and just say that in the Java environment I have had good experience with the Java Library [iText PDF|http://itextpdf.com/]. I'm not sure what SAP offers in that area, but they must have something, because [TREX|http://help.sap.com/saphelp_nw70/helpdata/EN/a4/929d4206b70931e10000000a1550b0/frameset.htm] "understands" PDF (though that doesn't mean that you have a nice API for parsing PDFs).
You probably investigated this already, but I'd take a look at possibilities to hook in before (or at the time) the PDF gets generated (might be easier to craft and export a filename there). Thanks to the [enhancement framework|http://help.sap.com/saphelp_nw70ehp2/helpdata/en/94/9cdc40132a8531e10000000a1550b0/frameset.htm] you usually have quite a few ways to get things done...
Note that even if you're able to read a PDF, it doesn't necessarily mean that you can parse it the way you want. A silly example would be scanned pages, where the page is stored as an image and at best the scanner software runs some OCR (with possibly buggy results) to provide capabilities for searching the PDF. In your case that's probably not an issue, but still the question might be if the information you're looking at is structured enough to get it back...
Cheers, harald -
Iphone 5 not searching for text messages correctly anymore?
If i type in 'Tim' to search for a text message from 'Tim' the search does not bring up tim's messages in the results, although it may randomly show some messages that have Tim in the written text of the messages??
But if i scroll down through the messages themselves without using the search tool, Tims messages are there!?
This isnt just for one person, it seeems to happen randomly for different names etc, As in i have a few friends by the name of Mark, yet when searching it may only bring up one of them...
Not sure if I have explained myself very well, but hopefully somebody will get the jist and be able to help!!If you only have that much (little) space left it is likely the database on the phone is unable to continue indexing your messages. I would strongly suggest that you start offloading some older messages and remove from your phone to free up space. At the minimum, delete some attachments after saving them to camera roll/backup.
Maybe you are looking for
-
Question on the A1038 Cinema Display
A friend recently gave me his old display. I have a couple of questions about it - one of which I'm guessing I already know the answer to. First, I have the display hooked up to the DVI video on the G4. I did not hook up the USB cable. The power ligh
-
Making button and a html site in visual studio community version
Hi, I like to Making button and a html site in visual studio community version but i dont know how to put the right code in my c# form to perform a action to my new html site i made with visual studio. So ik have a button and i added a html site wit
-
My ipad has locked-up, it has frozen while running an app, and will not respond to any button, what do I do? It simply stays on the same screen image, and does not respond to anything. When I plug it into itunes, there is no indication of its prese
-
How to get booklet printing?
https://discussions.apple.com/message/15194920#15194920 ETA: I'm investigating suggestions here, unless someone has found a better solution. Edit again: http://www.macupdate.com/app/mac/21068/create-booklet-pdf-service Trying this one... Hey everyon
-
Both initially worked on the phone after being stuck in Restore mode for 2 weeks. Multiple SIM card failures and now iChat and FaceTime no longer will work? Any thoughts???