Yahoo Finance Options Data Scraper (Python)

I need a python programmer to write a simple program to extract stock price data and accompanying call option prices from Yahoo finance. I expect your python library to be able to take a list of symbols (from 50 to 150 symbols) and go ahead to download the stock data and option data, for that day, from Yahoo finance for each given symbol, and extract the ‘call’ option chains for different expiration dates and different strike prices. I am not interested in put option data, just call option data.

You could check link to have an idea of what data you are downloading:

Stock Data: [url removed, login to view]

Options Chain Data: [url removed, login to view]

I would recommend using YQL or the ystockquote API to download the Yahoo stock data. It is available at [url removed, login to view] For downloading the call options chain data, I would also recommend using YQL.

When the contract is awarded I will provide more precise information on the stock data I wish to retrieve and what call options chain data I wish to retrieve. I will provide the logic for which call options I wish to download (e.g. expiry month, strike price, etc…)

On the delivery, I expect you to use regular expression or any other robust method to parse the data in a robust way and please raise an exception if anything goes wrong (for example, your code fails to download the page or your regular expression fails to parse the data). Finally, please document your code about input, output, exceptions raised in your code etc., and make your parsing code easier to accommodate future changes.

Upon retrieval of the stock and call options data, I want it written to a SQLite database called “StockData” residing in the same location as the python files. I will provide the schema and data model information when the contract is signed. The schema is really simply: two tables with a one to many relationship. Both tables combined have less than 20 columns.

After the data has been successfully written to the database, I want the program to query the database and email it to me as an HTML table in the body of the email. I will provide the columns and sort order. It must use SMTP to send the email and have variables in the code where I can specify the SMTP server name, username, and password, plus recipient email address. The Subject line of the email will have something like “Call Option Analysis for YYYY-MM-DD”. I will be using Gmail so your code must be able to authenticate to Gmail SMTP to send the email. You can setup a Gmail account and send an email using that account to test it.

I will run this python program once per day. It will be scheduled to automatically run using the Windows Task Scheduler. The python program must not require any arguments.

Please include your code a unit test for the following cases:

- test your code on three symbols with options: yhoo, msft, goog

- one symbol which has no options: grvy, in this case

- any other important functions need at least one test to show it works

Upon contract signing I will provide a high level application design, database schema, columns and datatypes, program logic, and sample HTML table.

Skills: Python, Web Scraping

See more: options data python, python yahoo finance, download options data yahoo, download option chain python, python yahoo options, python option, python download stock options, python stock options analysis, python stock scraper, python finance options, python download yahoo finance data, download yahoo options data, downloading stock options chains python, option chain scraper, ystockquote options, yahoo data python, python yahoo, python stock analysis, download option chain data python, parse options data yahoo finance, python code option prices data, yahoo finance api options, python download yahoo price, python yahoo option, sample python program extract yahoo finance data

About the Employer:
( 6 reviews ) Calgary, Canada

Project ID: #4175907

Awarded to:


hi, I am expert in python and web scraping. I am ready to do it.

$150 USD in 3 days
(17 Reviews)

9 freelancers are bidding on average $243 for this job


Hi sir, please check PM, thx Kimi.

$248 USD in 5 days
(60 Reviews)

I have lots of experience with writing web automation software, please see PMB for examples of my previous projects related to web automation. Available to start immediately and finish as soon as possible. Best Rega More

$250 USD in 3 days
(27 Reviews)

Hi, Ready to start your work. Eagerly awaiting for your positive reply. Please check your inbox for further details. Thanks, Shaik.

$250 USD in 2 days
(19 Reviews)

I'm a very experienced web scraper and data management expert. Python is my forte, and this task will be simple.

$150 USD in 3 days
(6 Reviews)

pls check suggestion in pmb

$250 USD in 5 days
(3 Reviews)

i can help

$500 USD in 7 days
(1 Review)

Hi, A prototype for your program is ready. Please see PMB for details. Best, Sandeep

$240 USD in 3 days
(1 Review)

Um a skilled Python developer and have sound experience in REST , DJANGO, Google App Engine , Mongodb and microsoft technologies. I will deliver the project with good coding and quality standards. [url removed, login to view] More

$150 USD in 15 days
(0 Reviews)