A web scraper build to search specific information for a given compound (and its pseudonyms)
1# Fourmi
2
3**Master branch**: [](https://travis-ci.org/jjdekker/Fourmi) [](https://coveralls.io/r/jjdekker/Fourmi?branch=master)
4
5**Developing branch**: [](https://travis-ci.org/jjdekker/Fourmi) [](https://coveralls.io/r/jjdekker/Fourmi?branch=develop)
6
7Fourmi is an web scraper for chemical substances. The program is designed to be
8used as a search engine to search multiple chemical databases for a specific
9substance. The program will produce all available attributes of the substance
10and conditions associated with the attributes. Fourmi also attempts to estimate
11the reliability of each data point to assist the user in deciding which data
12should be used.
13
14The Fourmi project is open source project licensed under the MIT license. Feel
15free to contribute!
16
17Fourmi is based on the [Scrapy framework](http://scrapy.org/), an open source
18web scraping framework for python. Most of the functionality of this project can
19be traced to this framework. Should the documentation for this application fall
20short, we suggest you take a close look at the [Scrapy architecture]
21(http://doc.scrapy.org/en/latest/topics/architecture.html) and the [Scrapy
22documentation](http://doc.scrapy.org/en/latest/index.html).
23
24### Installing
25
26If you're installing Fourmi, please take a look at our installation guides
27on our [wiki](https://github.com/jjdekker/Fourmi/wiki). When you've installed the application, make sure to check our
28usage guide on the [Command Line Interface](https://github.com/jjdekker/Fourmi/wiki/CLI) and on the [Graphical User Interface](https://github.com/jjdekker/Fourmi/wiki/GUI).
29
30### Using the Source
31
32To use the Fourmi source code multiple dependencies are required. Take a look at
33our [wiki pages](https://github.com/jjdekker/Fourmi/wiki) on using the application source code in our a step by step
34installation guide.
35
36When developing for the Fourmi project keep in mind that code readability is a
37must. To maintain the readability, code should be conform with the
38[PEP-8](http://legacy.python.org/dev/peps/pep-0008/) style guide for Python
39code. More information about the different structures and principles of the
40Fourmi application can be found on our [wiki](https://github.com/jjdekker/Fourmi/wiki).
41
42### To Do
43
44The Fourmi project has the following goals for the nearby future:
45
46__Main goals:__
47
48- Build an graphical user interface(GUI) as alternative for the command line
49interface(CLI). (Assignee: Harmen)
50- Compiling the source into an windows executable. (Assignee: Bas)
51
52__Side goals:__
53
54- Clean and unify data.
55- Extensive reliability analysis using statistical tests.
56- Test data with Descartes 1.
57
58### Project Origin
59
60The Fourmi project was started in February of 2014 as part of a software
61engineering course at the Radboud University for students studying Computer
62Science, Information Science or Artificial Intelligence. Students participate in
63a real software development project as part of the
64[Giphouse](http://www.giphouse.nl/).
65
66This particular project was started on behalf of Ivo B. Rietveld. As a chemist
67he was in need of an application to automatically search information on chemical
68substances and create an phase diagram. The so called "Descrates" project was
69split into two teams each creating a different application that has part of the
70functionality. We are the team Descartes 2 and as we were responsible for
71creating a web crawler, we've named our application Fourmi (Englis: Ants).
72
73The following people were part of the original team:
74
75- [Jip J. Dekker](http://jip.dekker.li)
76- Rob ten Berge
77- Harmen Prins
78- Bas van Berkel
79- Nout van Deijck
80- Michail Kuznetcov