Tag Archives: downloader

[kimol Jun’s boring little invention] – using Python to write paper downloader (graphical interface)

[Kimol’s Boring Gizz] — Writing Theses in Python (Graphical Interface)
1. Function function 2. Callback function 3. Thread generation function 4. Effect display
Write in the last

preface

Micro cool wind slightly raises a night to night, night, month light into my study ~
when I open the folder to review the past, near many seemingly messy code. As I was sitting there, an idea suddenly occurred to me: “Life is already very boring, it would be better to be boring again.”
so, I decided to open a project, then call the kimol jun boring gizmos .
wonderful... Ah ~ ~ ~

In the process of scientific research and learning, we inevitably need to query the relevant literature, and presumably many partners know the SCI-HUB, which is a great tool, it can help us search the relevant papers and download the original. It can be said that the Sci-Hub has benefited a lot of researchers, and it is also a "pleasure" to use.
The analysis process and the corresponding function code were described in the previous article. I found some problems according to the feedback of my friends. After all, the form of the command box is not so "smooth".

font> (>)
(PS)

(PS)

(PS)

(PS) This is written by Kimol in his crazy squeeze time, so the interface is relatively simple, I hope you can understand it more
I. Instructions for use

:
:
:
:
:
:
:
:
:
:
:
:

    Single Paper Download: Enter the title, DOI or PMID number of the paper in the title bar, and then select the directory of the paper storage. Click Start! Bulk download: select a.txt text in the title of the paper, which contains each paper to be downloaded in the following format:

    en, emmm...
    >
    >
    >
    >
    >
    >
    >
    >
    >

Second, code analysis
This graphical interface development is based on PyQT5, the specific layout of the interface here is not much introduction, mainly to the function of the realization of the description:
The idea is simple. Since we already have a function for the paper download, we just need to define a Button and bind it to the download function.
What's that?Not at all difficult. However, if you try it, the interface is stuttering. This is because it takes a long time to download the function, and if it is executed directly in the main thread, it will conflict with the main program that maintains the interface, resulting in a lag.

br>