सामग्री पर जाएँ

यह पृष्ठ अभी आपकी भाषा में उपलब्ध नहीं है। आप अंग्रेज़ी पाठ पढ़ रहे हैं।

Blog

How to move a hundred profiles out of a spreadsheet in an evening

You have a hundred rows in a spreadsheet: an account name, a proxy address, sometimes a 2FA key. A hundred profiles out of those rows is one evening of work, and the danger in it is a single one. Columns shift by one, and you get a hundred profiles that look correct: somebody else's name next to somebody else's proxy.

ARMANOS टीम7 min

What your spreadsheet already holds

A row usually carries the account name, a group or a project, a proxy address and a note. Next to them sit the 2FA key, the tags and a word about the operating system. The From a spreadsheet button above the profile list opens Import from a spreadsheet and reads all of it as it stands.

That is exactly what a profile needs in order to open and sign in. Renaming columns for the move is not part of the job.

  1. 1

    Name and group

    The profile name and the group you will later find it in.

  2. 2

    Proxy

    One column in the seller's own notation, or separate columns.

  3. 3

    The sign-in key

    The 2FA key, if you already have it written down.

One column off ruins the whole import

The worst outcome here is not a refusal but a quiet success. A hundred profiles appear, look correct, and carry somebody else's name next to somebody else's proxy.

A column shifts over small things. A semicolon instead of a comma, a quote inside a cell, a line break in the middle of a note: any of those moves everything standing to the right of it.

What turns up in the fileWhere it ends if you split on commas
A semicolon instead of a commaThe whole line becomes a single field
A comma inside quotes in the headerThe separator is picked wrong and columns shift
A line break inside a noteOne row turns into two
The invisible mark Excel writes firstThe first column matches nothing at all
A tab instead of a commaOne column for the whole row

There are three separators, not one

The app takes the separator from the first line of the file: a comma, a semicolon or a tab. Commas inside quotes are not counted, so a header that carries a comma inside quotes does not throw the choice off.

You do not rename the headers

The app matches a column by meaning rather than by an exact string. Name, profile name, Название and имя профиля all mean one field to it.

Case, spaces, underscores and dots in a header change nothing. The app matches thirteen fields this way, and the header itself may be Russian, Ukrainian, Spanish, German, Polish, Turkish, Japanese, Chinese, Korean, Thai, Arabic or Vietnamese.

A column the app did not understand is named back to you and left aside. Guessing it is out of the question: a quiet guess is that very shift by one column.

Proxies in one column or five

A proxy line from your seller does not need rewriting. The app reads five ordinary shapes as they are, and a label after a pipe too: a city name, or the link that changes the address.

There are four kinds of connection: a plain proxy, the same one encrypted, socks5, and an exit through your own server over SSH. The app takes an empty kind column for a plain proxy, because that is how the column is usually filled.

A named but unknown kind is a refusal on that row. A quiet downgrade to a plain proxy would mean you think you go one way while you go another.

How the seller writes itWhat the profile gets
host and portA plain proxy with no credentials
host, port, login, passwordA password with a colon inside arrives whole
login and password before the at signAn at sign inside the password is not a separator
the kind of connection first, then two slashesThe profile goes by the kind you named
kind, credentials, host and portBoth the kind and the credentials come from the line

Two spellings of socks5 and two foreign ones

Vendors spell the connection kind differently: socks5 and socks5h mean one and the same thing, and the program reads both as socks5. It does not treat the spelling difference as an error, because one and the same path stands behind it.

socks4 is a different path, and the program does not support it: such a row gets a refusal naming the reason rather than a quiet downgrade to socks5 or to a plain proxy. A bare socks with no number the program reads as socks4 and refuses too, and the refusal suggests putting socks5 if the vendor offers it. A refusal on a row is cheaper than a profile taking the wrong path.

The password column is not the proxy's

In a table of accounts the Login and Password columns belong to the account: to give them to the proxy, name the columns Proxy login and Proxy password. The address and the port, though, are recognised by bare names too: IP, Host, Server, Address, Port. If your IP column is the address an account was registered from, rename it, or it becomes the proxy.

The difference is not cosmetic. An account password taken for a proxy password would go to the proxy provider on every launch, the real proxy password would be gone, and the host would answer 407.

So the app does not attach the bare words login and password to the proxy at all. Your account password stays in your spreadsheet and never moves into the profile.

The 2FA key travels with the row

The 2FA key usually sits in the same spreadsheet, next to the password. It travels with the row, so you do not set the sign-in up a second time.

An otpauth link with its own settings travels whole: the number of digits, the length of the step and the algorithm. The defaults are six digits, thirty seconds and SHA1, and a default may never stand in place of your settings.

A key that cannot produce codes is named back to you and never stored. A wrong code fails the sign-in, and a few failed sign-ins lock the account.

An evening of work in five steps

The whole path is five steps, and the check sits between the fourth and the fifth. That is the one place worth five minutes of your time.

Row numbers are the ones you see in your own spreadsheet: the header is line one, the first profile is line two. You will walk to the trouble by line number, not by a count of profiles.

  1. 1

    Download an example

    Its columns are named the way the app expects them.

  2. 2

    Put your own rows in

    The order of columns is yours, and nothing needs renaming.

  3. 3

    Choose a file

    You are shown which column became which field.

  4. 4

    Check the first five

    The first five rows are shown as values, not as column names.

  5. 5

    Create the profiles

    Rows with trouble can be skipped or created without the broken part.

Blank lines do not shift the number

A real spreadsheet has blank lines between blocks, and the program skips them. The number does not shift: a refusal on line thirty of the file is called line thirty, however many blank lines stand above it.

A row broken by a line feed inside quotes is counted the same way: it takes two lines of the file and gets one number. You will go to the trouble by the number you see in your own spreadsheet, not by the count of accepted profiles.

How many profiles your plan holds

A hundred profiles is not always a hundred slots. The free plan holds two, and the Professional steps go 10, 20, 50 and 100 profiles, Business starts at 200 and reaches 1000, and Enterprise takes 5000 and up.

A row past your quota hits a refusal and stays in your file. So the step is worth choosing before the import rather than after the hundredth row.

A group from the column is created for you, and case does not make a second one: Sales and sales are one group. Proxies from the file land in your shared ARMANOS library, and a duplicate means the address together with the login: one host with per-session logins lands as many rows as there are logins in the file.

What this does not claim

  • It does not claim that all hundred accounts will survive their first day. A profile repeats a machine, while behaviour, payment details and the age of the account stay yours.
  • It does not claim that any file at all will be read. A row with no profile name stays a marked problem rather than a profile.
  • A column the app does not know is neither imported nor thrown away: it is named back to you and left in the file.
  • The account's own login and password do not travel out of the spreadsheet. Only the 2FA key does, and writing passwords into the file for the import is not needed.

Where you can see this yourself

Every number above comes out of code you can open and run.

Quotes, line breaks and Excel's invisible mark are read by rule
apps/desktop/src/lib/csv.js
A header is matched by meaning and in several languages at once
apps/desktop/src/lib/profileImport.js
Every case here is a shape a real spreadsheet arrives in
apps/desktop/test/csv-import.js
An account password does not reach the proxy settings
apps/desktop/test/csv-proxy-columns.js
A row with a group is not lost during the import
apps/desktop/test/csv-import-groups.js
The 2FA key gives the same code after a restore
apps/desktop/test/config-import-2fa.js
Five proxy line shapes and four kinds of connection
packages/shared/src/proxy-line.js · apps/desktop/test/proxy-library.js
Plan steps by profile count and the quota of the plan in force
packages/shared/src/index.js
Moving a profile loses no fields on any of the three routes
apps/desktop/test/перенос-не-теряет-полей.js

Questions

How long does a hundred rows take?
The import itself runs in minutes. The time goes into looking once at which column became which field.
Do I have to rename the columns in my spreadsheet?
No. Headers are matched by meaning, in English and in other languages, and case and spaces make no difference.
My Excel saves with semicolons. Does that get in the way?
No. The separator is taken from the first line of the file, and the invisible mark Excel writes at the start is stripped before reading.
What happens to a row where the proxy is written badly?
The row is shown to you with its number, the one from your spreadsheet. You can create the profile without a proxy or skip the row entirely.
Can I import groups along with the profiles?
Yes. Names from the group column become your groups, and the same name in a different case stays one group.
Can I still stop if the columns came out wrong?
Yes. The app creates nothing until you press create: first you are shown which column became which field, and the first five rows.
What if I later move these profiles to a second machine?
The profile travels with its fields: group, notes, tags, template and browser version. The 2FA key rides in the transfer file, while a copy of a profile deliberately leaves it behind.

Move your first ten rows

Take ten rows out of the spreadsheet and walk the whole path on them. If the columns landed right, the other ninety go the same evening.