Skip to main content

A screenplay bot

Project description

D.A.V.E.

Meet DAVE, the screenwriting bot. DAVE generates formatted screenplays from other screenplays.

Install

pip install davebot

Use

Stanley module

Generate screenplays

DAVE.nlp.Stanley uses all the modules below (except web scraping) to generate formatted screenplays (PDF and plaintext).

Example:

from DAVE.nlp.Stanley import Stanley
characters = ['HAL', 'DAVE', 'Stanley Kubrick', 'Discovery One', 
              'Arthur C. Clarke', 'The Sentinel']
source = ['2001-A-Space-Odyssey.txt', '2012.txt']

director = Stanley(source, characters, destination='output', title='2013', author='DAVE')
director.direct(length=100)

DAVE will create two files in the destination directory: <title>.pdf and <title>.txt.

Scraper module

Scraping Screenplays

DAVE.scraper.DiscoveryOne scrapes from IMSDB using BeautifulSoup

from DAVE.scraper import DiscoveryOne, Sentinel
DiscoveryOne.crawl(path, directory='.', pattern=GENRE):

Parse

DAVE.scraper.Sentinel and parses screenplays into subsections: headings, transitions, actions, parentheticals, and dialogue, to be further prepared into Markov models.

Sentinel.parse(*sources, destination='.', write=True)

Or, parse recursively using Sentinel.parse_directory

Sentinel.parse_directory(source='.', destination='parsed_categories', genre='All')`

NLP module

Serialize markov models

DAVE.nlp.HAL generates Markov chains from the parsed categories made by DAVE.scraper.Sentinel and serializes the models into JSON.

To create the Markov models:

from DAVE.nlp.HAL import HAL
HAL.generate_models(source='parsed_categories', destination='.')

Inspiration

A Space Odyssey

Inspiration from the name D.A.V.E. came from Stanley Kubrick's masterpiece film 2001: A Space Odyssey. The names of this package's modules all reflect characters, creators, texts, and important people involved in A Space Odyssey.

Sunspring

The original inspiration for this project comes from a short science fiction film: Sunspring.

Description (from Ars Technica):

In the wake of Google's AI Go victory, filmmaker Oscar Sharp turned to his technologist collaborator Ross Goodwin to build a machine that could write screenplays. They created "Jetson" and fueled him with hundreds of sci-fi TV and movie scripts. Building a team including Thomas Middleditch, star of HBO's Silicon Valley, they gave themselves 48 hours to shoot and edit whatever Jetson decided to write.

Sunspring Short Film

Click the image above to see the full video.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

davebot-1.0.1.tar.gz (8.3 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

davebot-1.0.1-py3-none-any.whl (23.9 kB view details)

Uploaded Python 3

File details

Details for the file davebot-1.0.1.tar.gz.

File metadata

  • Download URL: davebot-1.0.1.tar.gz
  • Upload date:
  • Size: 8.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.13.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/41.2.0 requests-toolbelt/0.9.1 tqdm/4.35.0 CPython/3.6.4

File hashes

Hashes for davebot-1.0.1.tar.gz
Algorithm Hash digest
SHA256 df9809269e3bd43b187b579e3f50e5aecb8b8c0fb49b268fd976e4a33323a6a8
MD5 eeee8811f5d545cbcd02c6503fbc39a1
BLAKE2b-256 3fe9fdf7f52cf47def8d01a5f257a31cf9b081bf6838a50673b2e6606637ad26

See more details on using hashes here.

File details

Details for the file davebot-1.0.1-py3-none-any.whl.

File metadata

  • Download URL: davebot-1.0.1-py3-none-any.whl
  • Upload date:
  • Size: 23.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.13.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/41.2.0 requests-toolbelt/0.9.1 tqdm/4.35.0 CPython/3.6.4

File hashes

Hashes for davebot-1.0.1-py3-none-any.whl
Algorithm Hash digest
SHA256 f93f132de4430d2ed70dc4eb34b9696b2a9974884d612f70ed4fcb585065bd6d
MD5 05b2c9d5046c2bb70e1306edcc6a1c20
BLAKE2b-256 b0073e1196b7c48ee3fc41545efd023f9610c07615e20c5ce3cf5f9c40788f65

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page