Monday, December 24, 2012

Bing Rewards automation

Have you heard of Bing! ? Do you know that there is something else you can search the information on the Internet with? Some say Bing! is an acronym to "But It's Not Google". I also heard that "Bing! Is Not Google". Anyway, we should admit we have not only Google. And you should really give it a try, because it is a search engine which may be a better finder for information of your interest and it has some nice pictures on it's start screen which rotate every day :) .

Note: for the most links below you should have Bing! rewards account. If you don't have one yet and you'd like to give it a try, please, use this link to join and you'll make me 10 reward points happier :) . Make sure you're binding your Facebook account, because this is what this article is written for.

Have you heard of that you can earn rewards on Bing! ? When you search on Bing! you earn, if you refer your friend and your friend joins Bing! rewards program you earn your referral points. Now what can you do with points? Well, here it is. What I personally do is I buy XBox Live membership or XBox gold. The math is simple: as of the date of writing this - you could earn 1 reward point for 3 searches and up to 15 reward points a day. Once in a while Bing! allows you to earn up to 30 points or provides instant reward points for clicking hot links. Just clicking, no criminal.

Are you still with me? So in order to get your points every day you need to do at least 15 * 3 = 45 searches. Unique searches. Daily unique searches. What you searched today can be found here. Now ask yourself - do you really Bing! 45 searches daily or twice as much on happy days? Maybe you prefer Google? Or (oh boy) Yahoo? Don't worry my friend, here is what you need. This post should even been started here.

If you are still reading, you obviously prefer spending a few more minutes on reading my mind stream in order to find an automated solution instead of Binging incredible amount of searches every day in order to get reward points. And you'll be rewarded my friend.

What do I need to get started?

You need to get Python2. Don't use version 3, it won't work. Version 3 is somewhat a different language from version 2. I used Python 2.7.3, but that should work with all newer versions as well, as they keep consistency. You may choose any flavor of Python - Windows, Linux/Unix, MacOS. I tested on Windows 8, Arch Linux and Ubuntu Linux, but hey, Python is a real cross-platform stuff, so you should have this get working under any OS.
You need to get my script. You're opted to choose from 2 options:
  • download as a ZIP file
  • clone a GIT repo [git://]
if you choose the second, you'll first need to install Git, if you don't have it installed yet. Please, refer to Git website for more information. Also if you choose Git repo, you'll be able to easily update to the latest version of the script (just in case if I add or edit something).
After you obtained my script, open in your favorite editor and edit two lines in the very top of the script:
That is where you need to put your Facebook e-mail and password. Haven't I told you have to have either Microsoft account or Facebook account to join MS Rewards program? Even though you can use both, but my script works only with Facebook account.

How do I run the script?

I am a Linux/Unix/Mac guy 

To run the script on Linux/Unix/Mac you just need to open your favorite terminal (or maybe you don't like DEs, then console), cd to whatever place you put the script into and do:
and you'll see it running, requesting pages on your behalf and earning points for you!

You may even consider adding the script to a list of cron jobs (or anacron) which will run it for you automatically. If you can't figure out how to do this, just write a comment and I will edit the post to show what needs to be done.

I am a Windows guy

If you are a Windows guy instead, just open up cmd (Windows+R - cmd - Enter), navigate to the place where you put my script:
cd "C:\Script\Directory"
and  run
where the first part is the place where you installed Python. C:\Python27\pyton.exe is the default location and should suit almost everyone.

You may even consider adding this script to at jobs list. Take a look at at /? help page. If you can't figure out how to do it yourself, just write a comment and I'll edit this article to reflect what needs to be done.

What does the script do?

To get a general understanding of what the script does take a look at the results sample. In a few words, it clicks the links to get instant reward points and searches for you. Searching takes your current day searches into consideration, so it requests only unique queries.

The script generates search queries from Bing! world news page, so don't worry. Until Bing! has world news every day, the script will generate unique queries :) .

Note: Bear in mind that the actual points earned can be different and completely depends on what Bing! reports.

Happy Binging! And happy earning points!

Read Bing! Rewards points to cash to find out how to converts points to cash.
Bing! Rewards Automation version 2.0
Bing! Rewards Automation version 3.0
Configuration for Bing! Rewards Automation script
Bing! Rewards Automation script: Unix Cron


  1. your script throws.
    Traceback (most recent call last):
    File "", line 411, in
    points = bingRewards.getRewardsPoints()
    File "", line 208, in getRewardsPoints
    s = page.index("txt.innerHTML = '")
    ValueError: substring not found

    1. It looks like some kind of flight. Bing! introduces different flights on a regular basis. I'll try to repro that. Don't promise, however. Flights can be ip specific, browser specific, location specific.

    2. This is fixed as of script version 1.4

  2. I can't get the script to run in crontab on my raspberry pi. I am adding a line at the end of the crontab 15 21 * * * python /home/pi/bing/


    1. do
      python /home/pi/bing/ > /path/to/log/file 2>&1
      and see the result

  3. It was telling me that it couldn't find the config.xml file. The file runs fine manually. I added an explicit cd to the script directory, then the python and it worked. Thanks for your help

    1. also you may run " -h" to see the options. Among those is -f which allows you to specify the path to your config or an alternative config.

  4. Script version 2.9 was shipped. Check it out

    2.9 +) Full report added. Script options [-r, --full-report].
    Report is automatically triggered if more than one account was processed and cumulative points earned was more than zero.

    1. I just came across your script and it runs perfectly. I do have a question though, how can I change the time it takes in-between searches? I would like it to choose a random number between 5 seconds and 20 seconds before it moves on to the next search.

      This could possibly help in preventing Microsoft from banning accounts that uses bots to rack up points.

      Thanks again for your help and all the effort you put into this project!

    2. Take a closer look at

      # sleep that amound of seconds (can be float) + some random(0, SLEEP_BETWEEN_BING_QUERIES_SALT) milliseconds

      # this random number of milliseconds will be added to SLEEP_BETWEEN_BING_QUERIES to get the resulting sleep time

      it's already there. And it's been there for a long time. And that is the reason why the script run is not banned by Bing! - because there is no way to distinguish it from a normal user. It does absolutely the same - requests a page, parses it, requests another page from the previous one supplying parameters.

      Why is the question?

    3. Thanks for your help. I missed that section when I did a quick read of

      I truly appreciate the work you do.

  5. Check out new posts:

  6. I'd absolutely love it if you updated your script to work with Microsoft Accounts, that'd be fantastic honestly. I made 4 bing smurf accounts to farm points, but they are all microsoft so this blows for me.

    1. It does work with Live account. It doesn't work with two step Auth.

  7. This comment has been removed by the author.