获取Avrix上Computer Vision and Pattern Recognition的论文,进一步进行统计分析。

本文记录了作者在18年寒假期间使用Python进行Avrix论文数据采集,存储到MySQL数据库,然后用C#开发数据查询界面的过程。数据采集涉及网络爬虫,数据库存储涉及MySQL,数据查询界面使用C#编写,旨在实现论文的检索和PDF预览。后续计划进行词频分析和数据可视化。
摘要由CSDN通过智能技术生成

此文主要记录我在18年寒假期间,收集Avrix论文的总结

寒假生活题外

  在寒假期间,爸妈每天让我每天跟着他们6点起床,一起吃早点收拾,每天7点也就都收拾差不多。
  早晨的时光是人最清醒的时刻,而且到十点左右才开始帮忙做中午饭,中间这么大把的时光,我就来做做自己喜欢的事情。小外甥女也回来,但她每天只有10点起床后才跟我玩,真希望她能早起背背古诗文。

概述

  整个项目由数据采集(Python),数据存储(Mysql),数据可视化(C#)组成。
  数据采集主要负责从网络上,获取Avrix的论文基本信息与论文下载地址。将其存储至MySQL,此过程中将分析Avrix上网页的结构,依靠依然是Chrome进行。
  数据存储食用的MySQL,其实我蛮想用SqlServer的,之前的东家是SqlServer,操作极其稳定与简单,速度很快,功能很全。新东家节约成本给我们多发点工资,用起来MySql了,使用了一段时间,大体上差不多,数据转存备份比转存比SqlServer复杂一些。
  数据可视化,目前做的部分是C#编译的一个查询界面,可以查询到相应的论文,可以从数据库中检索出论文,并链接指向的PDF文件,使用系统默认软件打开PDF。

分项陈述

pyhon数据采集部分

  直接上代码

# -*- coding:utf-8 -*-

#作者:Qt.chao
#时间:2018/02/20
#综述:从Cornell University的图书馆Arvix主页上,获取计算机领域Computer Vision and Pattern Recognition的相关论文

import urllib.request
import pymysql
from bs4 import BeautifulSoup
import requests
import time
import re
import os

# 数据库连接基础类
class Conn_Mssql:
    #查询Mysql使用sql语句
    def Select_mssql(strsql):
        #数据库连接信息
        conn = pymysql.connect("localhost", "**username**", "**password**", "internetdaq", charset="utf8")
        cur = conn.cursor()
        cur.execute(strsql)
        return cur
    #插入与更新sql语句使用
    def InsertOrUpdate_mssql(strsql):
        # 数据库连接信息
        conn = pymysql.connect("localhost", "**username**", "**password**", "internetdaq", charset="utf8")
        cur = conn.cursor()
        cur.execute(strsql)
        conn.commit()
        conn.close()
        return cur


#获取网络信息中的信息,并存储
class Get_HttpMessage:
    # 下载文件函数(根据连接地址,下载至D:StorePDF目录下)
    def getFile(url):
        try:
            file_name = url.split('/')[-1]
            file_path = "StorePDF\\"+file_name
            u = urllib.request.urlopen(url)
        except :
            print(url, "url file not found")
            return
        block_sz = 90192
        with open(file_path, 'wb') as f:
            while True:
                buffer = u.read(block_sz)
                if buffer:
                    f.write(buffer)
                else:
                    break
        # 成功获取下载并打印下载信息
        print("Sucessful to download" + " " + file_name)
    # 获取文章中的PDF文档链接地址并下载
    def getPaperFile(url,file_name,path):
        try:
            file_name = url.split('/')[-1]
            file_path = path +"\\"+file_name
            u = urllib.request.urlopen(url)
        except :
            print(url, "url file not found")
            return
        block_sz = 901920
        with open(file_path, 'wb') as f:
            while True:
                buffer = u.read(block_sz)
                if buffer:
                    f.write(buffer)
                else:
                    break
        print("Sucessful to download" + " " + file_name)

    # 从页面中获取论文数据(PDF下载地址与论文的标题等信息)
    def startGet(strUrl):
        print('start')
        # 链接的APPM网络
        url = strUrl
        request = urllib.request.Request(url)
        response = urllib.request.urlopen(request)
        data = response.read()
        soup = BeautifulSoup(data, "lxml")
        for link1 in soup.find_all(id=re.compile("dlpage")):
            for linklist in link1.find_all("dl"):
                # 论文连接地址相关的信息
                linklistLpdf = linklist.find_all("dt")
                # 论文标题作者等相关信息
                linklistLName = linklist.find_all("dd")

                # 节点信息长度
                cont_pdf = len(linklistLpdf)
                cont_Name = len(linklistLName)

                if cont_pdf == cont_Name :
                    for linkNum in range(0,(cont_Name)):
                        onepdf = linklistLpdf[linkNum].find_all(href=re.compile("pdf"))

                        if len(onepdf)>0 :
                            # PDF下载的连接地址
    
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值