MrC's Convert to 1Password Utility (mrc-converter-suite)



  • Thanks! Would be great if you would ping me

  • MrCMrC Community Moderator
    edited December 2018

    @sengelking ,

    I've updated the script in Testing Bits. It should now handle the empty username and/or password values. I've also eliminated the reference to the Passwords preference window by name, and instead use the generic reference to "Window 1". This should work so that you don't have to localize the Password -> Passwörter string. Please let me know if there are issues.

  • I came to this thread because I have to convert a lot of passwords into 1Password. So, I found your tool and would use it on Windows. The Readme tells me I have to download Strawberry Perl. But, the domain is not longer available. Do you have any other recommandation?

  • MrCMrC Community Moderator
    edited December 2018

    Hi @anton_sch

    It appears the Strawberry Perl site is having (hopefully temporary) DNS configuration issues:

    $ dig
    ; <<>> DiG 9.10.6 <<>>
    ;; global options: +cmd
    ;; Got answer:
    ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 21160
    ;; flags: qr rd ra; QUERY: 1, ANSWER: 0, AUTHORITY: 0, ADDITIONAL: 1
    ; EDNS: version: 0, flags:; udp: 4096
    ;        IN  A

    There is no IP address for the A record. Hopefully this will be corrected soon.

    In the mean time, you can use the Wayback Machine (the Internet Archive) to get the most recent snapshot of the website and the downloads. Here's the link:

  • edited December 2018

    I tried using the script for Safari, but it refused to open in Script Editor. I spent a few hours trying different things to see if it was something on my end, but I still cannot get it to open. The Safari 11 version opens, but I have Safari 12 unfortunately. I did try opening it with TextMate, but it was saying something about "unknown encoding" and showed a bunch of special characters scattered with bits of readable text. I'd very much appreciate some help, as the thought of transferring 200+ passwords by hand makes me cringe.

  • MrCMrC Community Moderator

    @JonathanFalcon ,

    Sorry about that. I started saving the files in a different script editor, and it saved them unbeknownst to me as Compiled Scripts instead of as pure text.

    Can you re-download and try again?

  • edited December 2018

    I was able to open it up and run it, and it seemed to be working until I was presented with this error:

    error "System Events got an error: Can’t get sheet 1 of window 1 of application process \"Safari\". Invalid index." number -1719 from sheet 1 of window 1 of application process "Safari"

  • MrCMrC Community Moderator

    @JonathanFalcon ,

    Did you have Safari’s Preferences opened to its Passwords tab, and have it unlocked?

  • I did. The whole process of selecting each item started and finished. This appeared right after it got done with the last item. Could it be the change you made in response to sengelking, specifically the one about window references?

  • MrCMrC Community Moderator

    @JonathanFalcon ,

    Yes, it probably is due to the change. I’ll fix this in the morning.

  • Hi, I'm having the same problem as JonathanFalcon

  • MrCMrC Community Moderator

    @JonathanFalcon / @sengelking

    I appreciate your patience while I work through these issues. I hate AppleScript ! :-)

    I've updated the Safari 12 version of the script. I've tested it on Mojave, and High Sierra (in German) with Safari 12.

    The new version of the script now opens Safari and its preferences to the Passwords area - you don't need to do this manually anymore. Just open the script, run it, and follow its directions.

  • edited December 2018

    Hi @MrC still not working, its a different fault now though, really appreciate all that your doing to help.

    -- 'ascr'\'err '{ '----':'utxt'("System Events got an error: Can’t get sheet 1 of window \"Passwords\" of application process \"Safari\". Invalid index."), 'errn':-1719, 'erob':'obj '{ 'form':'indx', 'want':'sheE', 'seld':1, 'from':'obj '{ 'form':'name', 'want':'cwin', 'seld':'utxt'("Passwords"), 'from':'obj '{ 'form':'name', 'want':'pcap', 'seld':'utxt'("Safari"), 'from':null() } } } }�

  • edited December 2018

    I received the same error. I’m trying it one more time, but it would seem to really not like “sheet 1”. It opens up the Passwords tab in Safari preferences (really convenient) and finishes copying the passwords, but it seems to get stuck at “sheet 1”. I really appreciate your commitment to this!

    Just finished and here’s a screenshot:

  • MrCMrC Community Moderator


    Confirm for me:
    1. You are using Safari 12
    2. You are using the script file named Get_Safari12_Passwords.applescript
    3. You gave permissions to Script Editor in System Preferences > Security & Private > Accessibility
    3. You opened the script in Script Editor and ran it from there

  • MrCMrC Community Moderator
    edited December 2018

    @JonathanFalcon ,

    I wonder if this is a timing problem, in that I have a really fast system and the sheet opens immediately, whereas on your systems it is opening slower so the sheet isn't available yet.

    Let's see - can you try adding a Delay of 1 second, as shown below, and try it:

    It will slow down the export, but hopefully this resolves the issue.

  • I doubt it's the reason why, but could it be the use of Safari 12.0.1? I can confirm that:
    1. I am using Safari 12 (12.0.1)
    2. I am indeed using the listed script
    3. I have given the required permissions. It actually prompted me to do so when I tried the Safari 11 version of the script.
    4. I have opened the script in Script Editor and ran it from there

  • Okay, I added that line, and it’s currently running. I can definitely tell it’s taken effect. I have a fair number of passwords, so I’ll add another comment when it either finishes (fingers crossed) or presents an error.

  • It presented the same error but in a different styling. Here's the screenshot:

  • Hi @MrC yes to all your questions above. made the changes you suggested but still failed. :(

    error "System Events got an error: Can’t get sheet 1 of window \"Passwords\" of application process \"Safari\". Invalid index." number -1719 from sheet 1 of window "Passwords" of application process "Safari"

  • MrCMrC Community Moderator

    @JonathanFalcon / @sebapostol

    I don't know why your systems are getting these errors and mine (include those which are virtual machines) are not. I'd hoped the delay was sufficient to test a theory.

    Do you know how far the process gets e.g. which row it gets to before it fails?
    Is it always the same row?

    I want to add some code to test that the sheet exists and only delay when it doesn't yet exist, but before I do this, I'd like to better understand why it fails for you, and where.

    You could add the line:

    say "Row " & i

    right after the

    delay 1

    and un-comment the line higher up:

    say "Dialog has " & nRows & "rows."

    to tell you how many rows you have.

    This will be rather obnoxious while it runs, but at least you'll get an idea of which row fails, and how many rows you have.

    Something else - please do NOT switch away from Safari while the script runs. Let it run until completion or failure. Switching away can cause the script to fail, since it will no longer be the front most window which the script is expecting.

  • edited December 2018

    If you mean row as in the Password window, I never really pay too much attention. I know I've seen it get down to Zomato. I also just noticed I have a blank website slot. I'm about to try it without the blank entry. I'll also remove the 1 second delay to speed it up. And if that doesn't work, I'll go ahead and try your suggestion above. I figured that I shouldn't switch away based on how it appeared to be doing it kinda manually.

  • MrCMrC Community Moderator

    @JonathanFalcon ,

    I also just noticed I have a blank website slot.

    I had been wondering if you had one of these, and that it might not open as a "sheet".

  • Ahhhhh this is like taucher lol

  • edited December 2018

    Will it end and say “hello world”

  • I just got done running it with the blank website account deleted, and it presented with the same error. I’m adding what you said to, but I’m curious if an entry with multiple websites might mess it up. An example being “” and “”. Could that be an issue?

  • edited December 2018

    Row 273 an entry with no website. I’ve deleted it and am trying again. No counting this time ...... 😳

  • edited December 2018

    @MrC @JonathanFalcon @sengelking Cracked it! that's is the problem it works perfectly if you remove all entry with no website

  • MrCMrC Community Moderator
    edited December 2018

    I’m curious if an entry with multiple websites might mess it up. An example being “” and “”. Could that be an issue?

    Yes! I had no idea that you could have multiple websites. How are/were those created? I had no idea you could have an entry w/out a website.

    Seems like we're making progress.

    I can code around the no-website entries. I presume the entry had either or both a username and password?

    What do the multiple website entries look like (when you open the sheet, and in the row without the sheet open?

    @sebapostol @JonathanFalcon

  • edited December 2018

    The multiple websites didn’t cause any probs for me. Only if there was no website

    Yes it had both username and password just no website and that’s where it would crash each time until I removed it out. It then worked perfect 👌

This discussion has been closed.