Goje 0.1.6
Unofficial Library for Scrapping Rotten Tomato.
License: MIT
Keywords: scrapper

Unofficial Library for Scrapping `Rotten Tomato <http://rottentomatoes.com/>`__
===============================================================================

Goje, in Persian (گوجه) means tomato. *Goje* is another library for
scrapping Movie Metadata from `Rotten
Tomato <http://rottentomatoes.com>`__ movie database. it is mainly
developed based on native python libraries. and believe me it is blazing
fast!

Installation
------------

``pip install Goje``

Usage
-----

Currently Goje supports 4 main functions:

+-----------------------------------+-----------------------------------+
| Method Name                       | Functionality                     |
+===================================+===================================+
| GojeScra                          | return all the Rotten Tomato      |
| per.extract_extract_movie_links() | Movie Links based on a given year |
|                                   | range                             |
+-----------------------------------+-----------------------------------+
| GojeScraper.extract_metadata()    | scrape, extract and return all    |
|                                   | movie information upon a given    |
|                                   | Movie URL                         |
+-----------------------------------+-----------------------------------+
| Goj                               | extract all the reviews of a      |
| eScraper.extract_critic_reviews() | Movie, based on a given Rotten    |
|                                   | Tomato movie URL and specified    |
|                                   | review page                       |
+-----------------------------------+-----------------------------------+
| GojeS                             | extract all the reviews of a      |
| craper.extract_audience_reviews() | Movie, based on the opinion of    |
|                                   | folks                             |
+-----------------------------------+-----------------------------------+

GojeScraper.extract_extract_movie_links()
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

.. code:: python

   from goje_scrapper import GojeScraper

   movie_scraper = GojeScraper()
   print(movie_scraper.extract_movie_links(2021,2022))

GojeScraper.extract_metadata()
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

.. code:: python

   from goje_scrapper import GojeScraper

   # give a Rotten Tomato Movie URL
   movie_url = 'https://www.rottentomatoes.com/m/a_separation_2011'
   # Instantiate Goje via given URL
   movie_scraper = GojeScraper(movie_url=movie_url)
   # Scrape Movie Meta Data
   movie_scraper.extract_metadata()
   print(movie_scraper.metadata)

GojeScraper.extract_critic_reviews() (single page review)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

.. code:: python

   from goje_scrapper import GojeScraper

   # give a Rotten Tomato Movie URL
   movie_url = 'https://www.rottentomatoes.com/m/a_separation_2011'
   # Instantiate Goje via given URL
   movie_scraper = GojeScraper(movie_url=movie_url)
   # When you want to extract one page of reviews
   all_reviews = movie_scraper.extract_critic_reviews(page_number=1)
   print(all_reviews)

GojeScraper.extract_critic_reviews() (All reviews)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

.. code:: python

   from goje_scrapper import GojeScraper

   # give a Rotten Tomato Movie URL
   movie_url = 'https://www.rottentomatoes.com/m/a_separation_2011'
   # Instantiate Goje via given URL
   movie_scraper = GojeScraper(movie_url=movie_url)
   # When you want to grab every review in rotten tomato
   review_list = list()
   try:
       movie_scraper.number_of_review_pages()

       for i in range(1,movie_scraper.number_of_review_pages()):
           review_list.append(movie_scraper.extract_critic_reviews(page_number=movie_scraper.number_of_review_pages()))
           print("page {0} is scrapped!".format(i))
   except IndexError:
       review_list.append(movie_scraper.extract_critic_reviews())

   print(review_list)

GojeScraper.extract_audience_reviews()
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

.. code:: python

   from goje_scrapper import GojeScraper

   # give a Rotten Tomato Movie URL
   movie_url = 'https://www.rottentomatoes.com/m/a_separation_2011'
   # Instantiate Goje via given URL
   movie_scraper = GojeScraper(movie_url=movie_url)
   audience_reviews = movie_scraper.extract_audience_reviews()
   print(audience_reviews)

Contribute, Issues and Stuff
----------------------------

Feel free to open an issue in `Github repository of
Goje <https://github.com/alifzl/goje_scrapper>`__.