⚠️ Warning: This post is over a year old, the information may be out of date.

📝 Setup python 3.6 enviroment with virtualenv

📅 | ⏰ 2 minutes

My wife ask me to convert few of PDF files to Excell spreadsheet. I did same thing last year by creating some small scripting program in python to do the conversion, but I don’t know where I put my code right now. Maybe lost during formating my laptop last year..haha 😜

I am 懒 right now (guess what I wrote in hànzì) and I don’t remember how I did last time. Hahaha.. With my Google-fu skill, I found out DfTables offer free API for converting document to another format. Nice! 😬

Fedora 30 comes with python 3.7 installed. Sadly, dftables.com API doesn’t currently work on 3.7 😲 but no worries since we can create virtualenv to load Python 3.6

Now let install the virtualenv into our workstation, take note I don’t use sudo since my account have administration access, so load with --user args should be enough. I don’t like run something and everthing with sudo.

$ pip3 install --user virtualenv

Download python 3.6 with DNF

$ sudo dnf install python36

Create some directory and cd to that directory. For example I am using ~/workstation/PDF-to-Excell. We will use python 3.6 to install the new python environment:

$ cd ~/workstation/PDF-to-Excell
$ virtualenv --python=/usr/bin/python3.6 python36

now step into the environment using

$ source python36/bin/activate

you should get something like this:

(python36) [rnm@robbinespu PDF-to-Excell] $ python --version
Python 3.6.9

Now let try install DfTables pips

(python36) [rnm@robbinespu PDF-to-Excell] $ pip install git+https://github.com/pdftables/python-pdftables-api.git
Collecting git+https://github.com/pdftables/python-pdftables-api.git
  Cloning https://github.com/pdftables/python-pdftables-api.git to /tmp/pip-req-build-yg3u92jx
  Running command git clone -q https://github.com/pdftables/python-pdftables-api.git /tmp/pip-req-build-yg3u92jx
Collecting requests (from pdftables-api==1.1.0)
  Downloading https://files.pythonhosted.org/packages/51/bd/23c926cd341ea6b7dd0b2a00aba99ae0f828be89d72b2190f27c11d4b7fb/requests-2.22.0-py2.py3-none-any.whl (57kB)
     |████████████████████████████████| 61kB 682kB/s
Collecting certifi>=2017.4.17 (from requests->pdftables-api==1.1.0)
  Downloading https://files.pythonhosted.org/packages/69/1b/b853c7a9d4f6a6d00749e94eb6f3a041e342a885b87340b79c1ef73e3a78/certifi-2019.6.16-py2.py3-none-any.whl (157kB)
     |████████████████████████████████| 163kB 2.1MB/s
Collecting urllib3!=1.25.0,!=1.25.1,<1.26,>=1.21.1 (from requests->pdftables-api==1.1.0)
  Downloading https://files.pythonhosted.org/packages/e6/60/247f23a7121ae632d62811ba7f273d0e58972d75e58a94d329d51550a47d/urllib3-1.25.3-py2.py3-none-any.whl (150kB)
     |████████████████████████████████| 153kB 10.6MB/s
Collecting idna<2.9,>=2.5 (from requests->pdftables-api==1.1.0)
  Downloading https://files.pythonhosted.org/packages/14/2c/cd551d81dbe15200be1cf41cd03869a46fe7226e7450af7a6545bfc474c9/idna-2.8-py2.py3-none-any.whl (58kB)
     |████████████████████████████████| 61kB 10.6MB/s
Collecting chardet<3.1.0,>=3.0.2 (from requests->pdftables-api==1.1.0)
  Downloading https://files.pythonhosted.org/packages/bc/a9/01ffebfb562e4274b6487b4bb1ddec7ca55ec7510b22e4c51f14098443b8/chardet-3.0.4-py2.py3-none-any.whl (133kB)
     |████████████████████████████████| 143kB 11.2MB/s
Building wheels for collected packages: pdftables-api
  Building wheel for pdftables-api (setup.py) ... done
  Created wheel for pdftables-api: filename=pdftables_api-1.1.0-cp36-none-any.whl size=5779 sha256=3e99b8595945f9ec3251e8d27e329f14f6783353b7d98d0a3cbc5fb35de53fa0
  Stored in directory: /tmp/pip-ephem-wheel-cache-c1feg25z/wheels/49/66/c0/e4f778e772a77892a98b3aaaba300cbb27a29a07e0c225cd80
Successfully built pdftables-api
Installing collected packages: certifi, urllib3, idna, chardet, requests, pdftables-api
Successfully installed certifi-2019.6.16 chardet-3.0.4 idna-2.8 pdftables-api-1.1.0 requests-2.22.0 urllib3-1.25.3

It working, nice!

Currently, We have isolated python 3.6 virtual enviroment and successfully installing required pips for Pdftables dependencies and now, let have some fun 🥰

Posted by: Hugo

Edit

Have some thoughts, discussion or feedback on this post?

💬 Send me an email

What is webmention? How to send interactions!

Below you can find all of webmention with this page. Which means, you also can mentioned this URL on any website that support WebMention. Have you written a response to this post? Let me know the URL:

Do you use a website that don't have WebMention capabilities? You can just use Comment Parade!