Code Monkey home page Code Monkey logo

eksimail's Introduction

NAME

eksimail - Deliver list of eksisozluk entries

DESCRIPTION

Download, merge & deliver lists of entries from eksisozluk.com

Install sendmail if you are not going to use SendGrid Web API:

sudo apt-get install sendmail

Install cpanm and carton

curl -L http://cpanmin.us | perl - App::cpanminus
cpanm Carton

This will install dependencies into local/

carton install

SYNOPSIS

carton exec ./eksimail --list=daily [email protected] [email protected] [email protected]

or

perl -I./local/lib/perl5 ./eksimail --list=daily [email protected] [email protected] [email protected]
  • Add --from and --to addresses with command line arguments. You can add more than one receivers.
  • If you don't add a --from an email won't be sent.
  • If you want to send via SendGrid Web API, provide --sendgrid-api-key. Otherwise sendmail will be used.
  • Adjust politeness delay (for web crawl) with --sleep. It's set to 5 seconds by default.

Arguments

list

There are two choices.

  • weekly: Top 20 posts from last week, published by eksisozluk.com. Output is saved at /tmp/{year}-{week_of_year}.html.
  • daily: Most popular entries from yesterday, published by eksisozluk.com. Output is saved at /tmp/{ymd}.html.

sendgrid-api-key

Provide SendGrid Web API key to use SendGrid. Otherwise sendmail will be used.

sleep

Amount of seconds to sleep between each request. This is passed to WWW::Eksi as politeness delay argument. Defaults to 5 if not provided.

from

Email address that email will be sent from. If it's not set, an email won't be sent.

to

Email address to send email to. This argument can be used more than once (see sample above)

LICENSE

MIT.

eksimail's People

Contributors

kyzn avatar

Watchers

 avatar  avatar

eksimail's Issues

Database

A mysql database will be created. (It's a shame there was none in 0.1)
We will store e-mail and kindle addresses to deliver.
We will store "best" lists by entry-ids.
We will store entries with their details.

Late update bug

From time to time, eksisozluk doesn't update the list at 7 AM, which is controlled in 0.1 but it results in sending nothing. Instead, we can set cron to check every hour. We may make use of database. Eg. the script can first check whether today is already downloaded and sent and so on.

Server Time vs Turkey Time

Dates of summer time changes are different, which causes application to not to work in a way you want for some time in the year. We should fix that before 0.2.

CPAN module

A CPAN module is to be created with Perl. This module will be used to grab entry text, entry creation time, entry edit time, entry id, topic that entry belongs to, and author. Module will be able to get "best 50 of yesterday" and/or similar lists as well.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.