Skip to main content

markovify user-provided text and output the results to a text file.

Project description

mkv-this

mkv-this is a little script that outputs a bunch of bot sentences based on a bank of text that you feed it. the results are saved to a text file of your choosing. if you run it again on the same output file, the new results are appended after the old ones.

a second command, mkv-this-dir allows you to input a directory and it will read all text files within as input.

it simply makes some of the features of the markovify python module available as a command line tool.

it was written by a total novice, so you probably shouldn’t download it. i only learned about argparser yesterday, and pypi.org today, no matter what day it is. tomorrow i might learn about os and sys.

installing:

install it with pip, the python package manager:

python3 -m pip install mkv-this

to do this you need python3 and pip. if you don't have them, install them through your system's package manager. on debian, for example, you'd run:

sudo apt install python3 python3-pip

markovify is also a dependency, but it should install along with mkv-this.

options:

the script implements a few of the basic markovify options, so you can:

  • specify output file (default = "./mkv-output.txt")
  • specify a maximum sentence length, in characters.
  • specify how many sentences to output (default = 5)
  • specify state size, i.e. the number of preceeding words to be used in calculating the probability of the next word (default = 2).
  • specify the amount of (verbatim) overlap allowed between your input text and your output text.
  • specify an additional file to use for text input. you can add only one. if you want to feed a stack of files into your bank, use mkv-this-dir.
  • if a second file is added, you can also specify the relative weight to give to the two files.

run mkv-this -h to see how to use these options.

mkv-this-dir: markovify a directory of text files

mkv-this can only take two files as input material each time. if you want to input a stack of files, use mkv-this-dir. it allows you to specify a directory and all text files in it will be used as input material.

if for some reason you want to get a similar funtionality with mkv-this, you can easily concatenate some files yourself in bash, then process them:

  • copy all your text files into a directory
  • cd into the directory
  • run cat * > outputfile.txt
  • run mkv-this on your newly created file: mkv-this outputfile.txt

for best results:

feed mkv-this large-ish amounts of well punctuated text. it works best if you bulk replace/remove as much mess as possible (URLs, metadata, stars, bullets, etc.), unless you want mashed versions of those things in your output.

if your input text doesn’t use full-stops to mark the ends of sentences, try putting each 'sentence' on a newline, and then write to the maintainer of this package to complain about how that option isn't yet implemented. then the parser wont read your entire file as one big sentence and output nothing.

you’ll probably want to edit the output. it is very much supposed to be a kind of raw material rather than print-ready boilerplate bosh, although many bots are happily publishing such output directly. you might find that it prompts you to edit it like a bot yourself.

for a few further tips, see https://github.com/jsvine/markovify#basic-usage.

happy zaning.

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

mkv-this-0.1.15.tar.gz (5.2 kB view details)

Uploaded Source

Built Distributions

mkv_this-0.1.15-py3.7.egg (15.4 kB view details)

Uploaded Source

mkv_this-0.1.15-py3-none-any.whl (21.3 kB view details)

Uploaded Python 3

File details

Details for the file mkv-this-0.1.15.tar.gz.

File metadata

  • Download URL: mkv-this-0.1.15.tar.gz
  • Upload date:
  • Size: 5.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.21.0 setuptools/46.1.3 requests-toolbelt/0.9.1 tqdm/4.45.0 CPython/3.7.3

File hashes

Hashes for mkv-this-0.1.15.tar.gz
Algorithm Hash digest
SHA256 44f5defeea956f352d2f76882afd0de541b642d46fbde584c4fcc104915f0159
MD5 aa7a7d1010b9dcc18dc3a8e9756b4f84
BLAKE2b-256 06a099b5a15b96e2ede08eb791dc58457285de7da17db9978021cfef31064ac8

See more details on using hashes here.

File details

Details for the file mkv_this-0.1.15-py3.7.egg.

File metadata

  • Download URL: mkv_this-0.1.15-py3.7.egg
  • Upload date:
  • Size: 15.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.21.0 setuptools/46.1.3 requests-toolbelt/0.9.1 tqdm/4.45.0 CPython/3.7.3

File hashes

Hashes for mkv_this-0.1.15-py3.7.egg
Algorithm Hash digest
SHA256 0cd630875853e7c9288243177c7268192a21bb83c5a3f5c55aec2eb02308dc94
MD5 544bc9a4a56f5ea78cbe435392fb1968
BLAKE2b-256 9b55fe0a6f9468ea16e79de43c6197f6f734d4432e2179d33c2f1f62247e9c50

See more details on using hashes here.

File details

Details for the file mkv_this-0.1.15-py3-none-any.whl.

File metadata

  • Download URL: mkv_this-0.1.15-py3-none-any.whl
  • Upload date:
  • Size: 21.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.21.0 setuptools/46.1.3 requests-toolbelt/0.9.1 tqdm/4.45.0 CPython/3.7.3

File hashes

Hashes for mkv_this-0.1.15-py3-none-any.whl
Algorithm Hash digest
SHA256 976875ef96ef58d1b02d9130a28aaba07b1b9c86b399b10190ec548ce217b92d
MD5 b241d9d1a796173e049ea81ddb18b0c0
BLAKE2b-256 b7669c82aeef32cdd7416716eba186f35760ba2a7bd05f75367aea1a2dedb81d

See more details on using hashes here.

Supported by

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