Skip to content

Commit 7f17a90

Browse files
committed
Initial commit
0 parents  commit 7f17a90

File tree

105 files changed

+16941
-0
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

105 files changed

+16941
-0
lines changed

.gitattributes

+2
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
# Auto detect text files and perform LF normalization
2+
* text=auto

.gitignore

+6
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
.sass-cache/
2+
.DS_Store
3+
.idea
4+
.vscode
5+
_site
6+
.jekyll-cache

.tools/Pipfile

+11
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
[[source]]
2+
name = "pypi"
3+
url = "https://pypi.org/simple"
4+
verify_ssl = true
5+
6+
[dev-packages]
7+
8+
[packages]
9+
10+
[requires]
11+
python_version = "3.8"

.tools/Pipfile.lock

+20
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

.tools/unarchiver.py

+72
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,72 @@
1+
import os
2+
import re
3+
4+
import pprint
5+
import requests
6+
import yaml
7+
from bs4 import BeautifulSoup as bs
8+
9+
10+
pp = pprint.PrettyPrinter(indent=1)
11+
urls = [
12+
'https://web.archive.org/web/20201111195636/https://eic.network/projects/malta-files',
13+
'https://web.archive.org/web/20210307091845/https://eic.network/projects/toxic-valley',
14+
'https://web.archive.org/web/20210307091845/https://eic.network/projects/tax-evader-radar',
15+
'https://web.archive.org/web/20210307091845/https://eic.network/projects/jersey-offshore',
16+
'https://web.archive.org/web/20210307091845/https://eic.network/projects/billions-for-borders',
17+
'https://web.archive.org/web/20210307091845/https://eic.network/projects/football-leaks-continues',
18+
'https://web.archive.org/web/20210307091845/https://eic.network/projects/europe%20on%20coke',
19+
'https://web.archive.org/web/20210307091845/https://eic.network/projects/court-secrets',
20+
'https://web.archive.org/web/20210307091845/https://eic.network/projects/arms',
21+
'https://web.archive.org/web/20210307091845/https://eic.network/projects/football-leaks',
22+
'https://web.archive.org/web/20210307091845/https://eic.network/projects/malta-files',
23+
'https://web.archive.org/web/20210307091845/https://eic.network/projects/ballet'
24+
]
25+
26+
27+
def get_bs(url):
28+
page = requests.get(url)
29+
return bs(page.text, 'html.parser')
30+
31+
def unarchive_link(url):
32+
regex = re.compile('(^http.*)(?=http[s]*\://.*)')
33+
new_link = regex.sub('', url)
34+
return new_link
35+
36+
def get_publications(soup):
37+
result = list()
38+
newspapers = soup.find(
39+
'section', id='publications'
40+
).find('div', class_='col-md-6').findChildren('div', recursive=False)
41+
42+
for newspaper in newspapers:
43+
h5 = newspaper.find('h5')
44+
newspaper_dict = {
45+
'name': h5.a.text.strip(),
46+
'lang': h5.text.replace(h5.a.text, '').strip()
47+
}
48+
newspaper.find('h5').decompose()
49+
links = newspaper.find_all('a')
50+
newspaper_dict['links'] = [
51+
{
52+
'name': l.text.strip(),
53+
'url': unarchive_link(l.attrs['href'])
54+
} for l in links
55+
]
56+
result.append(newspaper_dict)
57+
return result
58+
59+
def to_yaml(publications):
60+
return yaml.dump(publications, indent=2)
61+
62+
for url in urls:
63+
try:
64+
soup = get_bs(url)
65+
publications = get_publications(soup)
66+
yml = to_yaml(publications)
67+
print(yml)
68+
print(url)
69+
except Exception as e:
70+
print('ERR! RrrRRrR!')
71+
print(e)
72+
import ipdb; ipdb.set_trace()

CNAME

+1
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
eic.network

Dockerfile

+30
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,30 @@
1+
FROM jekyll/jekyll:latest as build
2+
3+
ARG USER_UID
4+
ARG USER_GID
5+
ARG USER_NAME
6+
7+
RUN groupadd -g $USER_GID -o $USER_NAME
8+
RUN useradd -m -u $USER_UID -g $USER_GID -o -s /bin/bash $USER_NAME
9+
USER $USER_NAME
10+
11+
WORKDIR /srv/jekyll
12+
13+
ADD . /srv/jekyll
14+
15+
user root
16+
RUN gem install bundler && \
17+
rm -rf Gemfile.lock && \
18+
chmod -R 777 ${PWD}
19+
20+
RUN echo $USER_NAME
21+
RUN echo $USER_UID
22+
RUN echo $USER_GID
23+
USER root
24+
RUN rm -rf Gemfile.lock && \
25+
bundle update && \
26+
bundle install
27+
28+
USER $USER_NAME
29+
30+
CMD ["jekyll", "serve", "--trace", "--host", "0.0.0.0"]

Gemfile

+28
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,28 @@
1+
source "https://rubygems.org"
2+
# Hello! This is where you manage which Jekyll version is used to run.
3+
# When you want to use a different version, change it below, save the
4+
# file and run `bundle install`. Run Jekyll with `bundle exec`, like so:
5+
#
6+
# bundle exec jekyll serve
7+
#
8+
# This will help ensure the proper Jekyll version is running.
9+
# Happy Jekylling!
10+
gem "jekyll", "~> 4.2.0"
11+
# If you want to use GitHub Pages, remove the "gem "jekyll"" above and
12+
# uncomment the line below. To upgrade, run `bundle update github-pages`.
13+
# gem "github-pages", group: :jekyll_plugins
14+
# If you have any plugins, put them here!
15+
group :jekyll_plugins do
16+
gem "jekyll-feed"
17+
gem 'jekyll-admin'
18+
end
19+
20+
# Windows and JRuby does not include zoneinfo files, so bundle the tzinfo-data gem
21+
# and associated library.
22+
platforms :mingw, :x64_mingw, :mswin, :jruby do
23+
gem "tzinfo", "~> 1.2"
24+
gem "tzinfo-data"
25+
end
26+
27+
# Performance-booster for watching directories on Windows
28+
gem "wdm", "~> 0.1.1", :platforms => [:mingw, :x64_mingw, :mswin]

Gemfile.lock

+98
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,98 @@
1+
GEM
2+
remote: https://rubygems.org/
3+
specs:
4+
addressable (2.7.0)
5+
public_suffix (>= 2.0.2, < 5.0)
6+
backports (3.21.0)
7+
colorator (1.1.0)
8+
concurrent-ruby (1.1.8)
9+
em-websocket (0.5.2)
10+
eventmachine (>= 0.12.9)
11+
http_parser.rb (~> 0.6.0)
12+
eventmachine (1.2.7)
13+
ffi (1.15.0)
14+
forwardable-extended (2.6.0)
15+
http_parser.rb (0.6.0)
16+
i18n (1.8.10)
17+
concurrent-ruby (~> 1.0)
18+
jekyll (4.2.0)
19+
addressable (~> 2.4)
20+
colorator (~> 1.0)
21+
em-websocket (~> 0.5)
22+
i18n (~> 1.0)
23+
jekyll-sass-converter (~> 2.0)
24+
jekyll-watch (~> 2.0)
25+
kramdown (~> 2.3)
26+
kramdown-parser-gfm (~> 1.0)
27+
liquid (~> 4.0)
28+
mercenary (~> 0.4.0)
29+
pathutil (~> 0.9)
30+
rouge (~> 3.0)
31+
safe_yaml (~> 1.0)
32+
terminal-table (~> 2.0)
33+
jekyll-admin (0.11.0)
34+
jekyll (>= 3.7, < 5.0)
35+
sinatra (~> 1.4)
36+
sinatra-contrib (~> 1.4)
37+
jekyll-feed (0.15.1)
38+
jekyll (>= 3.7, < 5.0)
39+
jekyll-sass-converter (2.1.0)
40+
sassc (> 2.0.1, < 3.0)
41+
jekyll-watch (2.2.1)
42+
listen (~> 3.0)
43+
kramdown (2.3.1)
44+
rexml
45+
kramdown-parser-gfm (1.1.0)
46+
kramdown (~> 2.0)
47+
liquid (4.0.3)
48+
listen (3.5.1)
49+
rb-fsevent (~> 0.10, >= 0.10.3)
50+
rb-inotify (~> 0.9, >= 0.9.10)
51+
mercenary (0.4.0)
52+
multi_json (1.15.0)
53+
pathutil (0.16.2)
54+
forwardable-extended (~> 2.6)
55+
public_suffix (4.0.6)
56+
rack (1.6.13)
57+
rack-protection (1.5.5)
58+
rack
59+
rack-test (1.1.0)
60+
rack (>= 1.0, < 3)
61+
rb-fsevent (0.10.4)
62+
rb-inotify (0.10.1)
63+
ffi (~> 1.0)
64+
rexml (3.2.5)
65+
rouge (3.26.0)
66+
safe_yaml (1.0.5)
67+
sassc (2.4.0)
68+
ffi (~> 1.9)
69+
sinatra (1.4.8)
70+
rack (~> 1.5)
71+
rack-protection (~> 1.4)
72+
tilt (>= 1.3, < 3)
73+
sinatra-contrib (1.4.7)
74+
backports (>= 2.0)
75+
multi_json
76+
rack-protection
77+
rack-test
78+
sinatra (~> 1.4.0)
79+
tilt (>= 1.3, < 3)
80+
terminal-table (2.0.0)
81+
unicode-display_width (~> 1.1, >= 1.1.1)
82+
tilt (2.0.10)
83+
unicode-display_width (1.7.0)
84+
85+
PLATFORMS
86+
x86_64-darwin-19
87+
x86_64-linux
88+
89+
DEPENDENCIES
90+
jekyll (~> 4.2.0)
91+
jekyll-admin
92+
jekyll-feed
93+
tzinfo (~> 1.2)
94+
tzinfo-data
95+
wdm (~> 0.1.1)
96+
97+
BUNDLED WITH
98+
2.2.15

LICENCE

+21
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
The MIT License (MIT)
2+
3+
Copyright (c) 2014 Grav
4+
5+
Permission is hereby granted, free of charge, to any person obtaining a copy
6+
of this software and associated documentation files (the "Software"), to deal
7+
in the Software without restriction, including without limitation the rights
8+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9+
copies of the Software, and to permit persons to whom the Software is
10+
furnished to do so, subject to the following conditions:
11+
12+
The above copyright notice and this permission notice shall be included in all
13+
copies or substantial portions of the Software.
14+
15+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21+
SOFTWARE.

0 commit comments

Comments
 (0)