999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

智能信息采集器軟件開發實踐

2021-06-16 13:25:50傅駿傅馨竹吳高靜丁才愈龍輝陽熊子淇
關鍵詞:二次開發

傅駿 傅馨竹 吳高靜 丁才愈 龍輝陽 熊子淇

The Software Development Practice of Intelligent Information Collector

FU Jun1, FU Xin-zhu2, WU Gao-jing1, DING Cai-yu1, LONG Hui-yang1, XIONG Zi-qi1

(1.Department of Materials Engineering, Sichuan Engineering Technical College, Deyang 618000, China;

2.Junior Middle School, Deyang No.5 Middle School, Deyang 618000, China)

【摘? 要】應用爬蟲技術開發的智能信息采集器,可以幫助用戶及時獲得工程學院、鑄造院校、焊接行業、軍事網站的最新消息。論文選用tkinter進行界面設計,應用python爬蟲技術對xpath、抓取到的日期、網址進行了處理,順利實現抓取消息并獲得消息的網址。用戶可以進一步打開感興趣的網頁進行詳細閱讀。

【Abstract】The intelligent information collector developed with crawler technology can help users get the latest information of Engineering College, Foundry College, welding industry and military websites in time. The paper selects and uses tkinter to design the interface, and uses python crawler technology to process the xpath, the fetched date, and the URL, which smoothly realized fetching the message and getting the URL of the message. Users can further open the web pages of interest for detailed reading.

【關鍵詞】爬蟲技術;信息采集;python;二次開發;xpath

【Keywords】crawler technology; information collection; python; secondary development; xpath

【中圖分類號】TP311.5? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?【文獻標志碼】A? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?【文章編號】1673-1069(2021)05-0192-02

1 引言

網絡信息時代,資訊鋪天蓋地、紛繁復雜。科學院所、行業企業和政府部門需要知道最新的科學前沿、法律法規和工作動態的網頁信息,從而作出決策。但冗雜的網頁信息在他們查找時是很困難的。本團隊在完成省級課題“厲害了,我的國——建國以來重大科技成就科普作品”過程中經常需要緊跟科技成果和技術發展,這就要對指定的相關度高的網站進行消息搜索。如果逐一搜索這些網站的欄目,花費時間長并且經常容易遺漏,團隊基于python爬蟲技術設計了“智能信息采集器”,有效解決了這一問題。

2 技術基礎

2.1 python

網絡爬蟲按照一定的規則,自動地抓取萬維網信息,可以采集所有其能夠訪問到的頁面內容,以獲取或更新這些網站的內容和檢索方式。獲取網頁消息,目前技術手段有python爬蟲技術以及各種爬蟲框架,本團隊采用python爬蟲技術進行設計。tkinter模塊是python的標準GUI工具包接口,可以非常方便實現很多直觀的功能。tkinter是python自帶庫,不需下載安裝,可直接使用[1]。

2.2 獲取xpath

xpath是一門在XML文檔中查找信息的語言。在瀏覽器中,打開網頁,右鍵“審查元素”,打開“DockSide”,單擊左上方的“Select an element in the page to inspect it(Ctrl+Shift+C)”按鈕,單擊網頁中的消息,在html代碼中,右鍵“copy/xpath”,可以獲得消息的xpath[2]。

3 開發實踐

3.1 總體設計

變量表。每一段的局部變量newa、urla、timea;全局變量newlist、urllist、timelist;各個單位名稱用label,依次為label2、label3……每個單位名稱下有若干個欄目,用復選框CheckButton,CheckButton命名為單位名稱+欄目名稱字母縮寫,用復選框Checkbutton.variable聯系起來。

將newlist、urllist、timelist清空;如果選中了某個單位的某個欄目,則運行對應的def;運行后,抓取的全部新聞標題添加到newlist、網址添加到urllist、日期添加到timelist中。運行全部欄目后,獲取newlist的長度numbber。urlx、newx、timx清空,num=0;獲取希望的時間段zj變量值。從i=0到numbber,依次讀取timelist[i]的值,如果時間符合zj,則num加1,且將newlist、uellist對應的值添加到urlx[num]、newx[num]。

一共有num條符合時間段的選取欄目的新聞。若num>0,則在窗體2上顯示出來。i=0--num,將newx[i]依次用Button顯示出來。若num=0,則提示“本次新聞數為0”,并用information予以提示。

3.2 界面設計

主界面上有行業按鈕(見圖1),“工程學院”“鑄造院校”“中國工程院”“焊接行業”“軍事愛好者”等。點開相應按鈕,進入對應的程序。關鍵代碼是:

mainwin=Tk()

mainwin.title('智能信息采集器')

mainwin.geometry('500x100+450+100')

mainwin.resizable(0,0)

mainwin["background"]="LightSkyBlue"

openscetc=Button(mainwin,text="四川工程",command=四川工程).place(x=30,y=35)

opencast=Button(mainwin,text="鑄造院校",command=打開鑄造).place(x=136,y=35)

openmil=Button(mainwin,text="軍事愛好者",command=軍事愛好者).place(x=350,y=35)

openweld=Button(mainwin,text="焊接行業",command=焊接企業).place(x=244,y=35)

mainwin.mainloop()

點開按鈕,打開對應的信息采集器。圖2是焊接行業信息采集器。

3.3 網頁解析

爬蟲獲取網頁數據的基本過程是:發送請求、獲取響應數據、解析并提取數據、向用戶展示爬取結果。發送請求可以采用requests模塊或selenium模塊。解析數據可以選用re正則、bs4(BeautifulSoup4)或xpath。項目組經過技術調研,采用了requests模塊和xpath。標題和日期通常是不同的xpath。用xpath1/text()抓取消息標題,xpath1/@href抓取消息的鏈接,用xpath2/text()抓取消息的日期。關鍵代碼是[3,4]:

import requests

from lxml import etree

import webbrowser

html=requests.get(url,headers=heade)

html.encoding='簡體中文'

news=etree.HTML(html.text)

newstitle=news.xpath('xpath1/text()')? #抓取消息的標題

newsurl=news.xpath('xpath1/@href')? ?#抓取消息的鏈接

newsdate=news.xpath('xpath2/text()') #抓取消息的日期

3.4 xpath的處理

在DockSide中獲得的xpath有多種類型,需要根據情況進行處理。以下是常見的3種xpath類型:

①一頁上1個xpath。最簡單的一種情況是拷貝網頁上的兩條消息后,比較中括號內數字,刪除數字有變化的中括號,則可以抓取該xpath下所有的消息。②同一頁上有1個以上xpath。按照①的方法刪除中括號后只能抓取到網頁上部分消息,則此時要拷貝出沒有被抓取到消息的xpath,逐條比對,再次運行,直到確保全部抓取。③只保留根xpath。在DockSide中獲得的xpath通常有若干級,但由于站群系統的區別,不能成功抓取,解決辦法是只留下根xpath即可成功抓取。

3.5 獲取URL

在采用xpath/@href的方法獲得的網址,需要print進行觀察,通常有以下兩類情況:①獲取完整的網址,可以直接使用;②僅抓取到網頁帶日期的部分,則可以通過預設preurl解決。

3.6 獲取日期

通過xpath2/text()抓取到的消息日期date,統一為yyyy-mm-dd格式。亦通過print進行觀察,通常有以下三類情況:①分隔符不是短橫線.對形如yyyy/mm/dd、yyyy年mm月dd日的日期,用replace替換。date=date.replace('/','-').replace(('年','-').replace((月'','-').replace(('日','')②首尾有其他字符。對形如[yyyy-mm-dd]的日期,亦用replace替換。date=date.replace('[','').replace((']','-')③包含時間。對形如2021-01-31 10:01的日期數據,只留下年月日,則截取前10個字符。date=date[0:10]

3.7 時間段的處理

消息時間段分為今天、近三天、本周、近一個月。判斷time.mktime(today)與timeStamp的差值。

today=time.localtime(time.time())

today=int(time.mktime(today))

timeArray=time.strptime(timelist, '%Y-%m-%d')

timeStamp=int(time.mktime(timeArray))

shij=(today-timeStamp)/(24*3600)

圖3是圖2中“焊接質檢+中國工程焊接協會+焊接之家+近一月”的檢索結果。

4 結語

應用爬蟲技術開發了智能信息采集器,可以分別采集四川工程職業技術學院、鑄造院校、焊接行業、軍事網站的最新網頁消息,滿足不同用戶的需求。提供給用戶免費使用后,受到了用戶的歡迎。

科學技術日新月異,完全可以利用這些技術開發一些適合自己使用的小程序,滿足個性化需求。應用本項目技術開發的作品參加大學生系列競賽,獲得了多項獎勵。

【參考文獻】

【1】戴瑗,鄭傳行.基于Python的南京二手房數據爬取及分析[J].計算機時代,2021(1):37-40+45.

【2】李文華.解析網絡爬蟲技術原理[J].福建電腦,2021,37(1):95-96.

【3】許景賢,林錦程,程雨萌.Selenium框架的反爬蟲程序設計與實現[J].福建電腦,2021,37(1):26-29.

【4】傅駿,鄭丁元,張峻寧,等.Python爬蟲技術在文獻計量學中應用實踐[J].計算機產品與流通,2019(7):133.

猜你喜歡
二次開發
淺談基于Revit平臺的二次開發
甘肅科技(2020年20期)2020-04-13 00:30:02
西門子Operate高級編程的旋轉坐標系二次開發
淺談Mastercam后處理器的二次開發
模具制造(2019年3期)2019-06-06 02:11:02
Micaps3.2 版本二次開發入門淺析
西藏科技(2015年12期)2015-09-26 12:13:51
ANSYS Workbench二次開發在汽車穩定桿CAE分析中的應用
汽車零部件(2014年5期)2014-11-11 12:24:32
基于Pro/E二次開發的推土鏟參數化模塊開發
主站蜘蛛池模板: 欧美成人日韩| 国产欧美日韩免费| 欧美国产日韩另类| 国产极品粉嫩小泬免费看| 日韩视频精品在线| 国产黄色免费看| 亚洲最大情网站在线观看| 国产拍在线| 国产一区二区视频在线| 丰满人妻中出白浆| 国产亚洲欧美日韩在线一区二区三区| 精品伊人久久大香线蕉网站| 亚洲成人网在线播放| 国产在线高清一级毛片| 91福利免费视频| 亚洲综合二区| 3D动漫精品啪啪一区二区下载| 国产毛片高清一级国语| 亚洲综合婷婷激情| 成人无码一区二区三区视频在线观看| 欧美色伊人| 欧美日韩精品一区二区视频| 国产理论精品| 国产成人精品男人的天堂| 亚洲色欲色欲www在线观看| 91成人免费观看| 2021国产精品自产拍在线| 欧美色综合久久| 亚洲最大福利网站| 性做久久久久久久免费看| 国产99视频精品免费观看9e| 国产成人综合久久| 无码网站免费观看| 国产精品妖精视频| 日韩欧美在线观看| 亚洲一欧洲中文字幕在线| 大陆国产精品视频| 亚洲AV一二三区无码AV蜜桃| 亚洲区视频在线观看| 十八禁美女裸体网站| 试看120秒男女啪啪免费| 在线国产资源| 呦视频在线一区二区三区| 日韩高清在线观看不卡一区二区| 91色综合综合热五月激情| 日韩天堂网| 国产农村妇女精品一二区| 不卡视频国产| 国产精品毛片一区视频播| 91亚瑟视频| 亚洲日韩精品伊甸| 久久久久青草大香线综合精品| 成人在线观看不卡| 久久综合色视频| 日本午夜三级| 国产99在线观看| 国产精品久久久久婷婷五月| 伊人久久大线影院首页| 永久免费精品视频| 老司机精品99在线播放| 国产精品专区第1页| 国产精品三区四区| 亚洲乱码在线播放| 亚洲av无码成人专区| 免费午夜无码18禁无码影院| 精品国产成人av免费| 国产精品爽爽va在线无码观看| aⅴ免费在线观看| 亚洲无限乱码| 久久性视频| 91视频区| 色噜噜在线观看| 亚洲天堂视频在线播放| 漂亮人妻被中出中文字幕久久| 国产免费羞羞视频| www.国产福利| 欧洲在线免费视频| 欧美高清三区| 97视频免费在线观看| 久久久精品无码一区二区三区| 色综合久久久久8天国| 欧美视频二区|