第一戰 爬起靜態網頁 資料庫儲存

2022-08-21 05:06:13 字數 2149 閱讀 5648

最近開始學習爬蟲技術,將自己學習的心得以及一些認識寫在部落格裡,歡迎更多的人一塊和我從零開始學習爬蟲。

爬蟲的基本環境和一些常用庫就不多說了。先直接介紹爬取的網頁和我的爬蟲貼**。

爬取** 塔里木大學教務處

爬取目的 將網頁上所有的新聞標題爬下來

**介面

先上**

import

requests

import

relink = "

"headers =

r = requests.get(link,headers=headers)

r.encoding='

utf-8

'list = re.findall('

a\shref="info(/.*)"\sclass=".*"\stitle="(.*?)"\starget="_blank">

',r.text)#

a\shref="info/&&&&/.*"\sclass=".*"\stitle="(.*?)"\starget="_blank &&&&符號限制爬什麼地方

for eachone in

list:

url = "

info

"+eachone[0]

title = eachone[1]

print(url, title)

這是最基本的操作,乙個link,乙個header,是網頁的基本資訊,用於模仿瀏覽器訪問的重點。

因為這個**估計是做的時候很爛,編碼很詭異,我用r.encoding='uft-8'將獲取的文字內容轉換成utf-8模式。

再用正規表示式在獲取的網頁**中尋找自己所需要的**段,在輸出的時候,正規表示式中的括號部分則為儲存下來的東西。關於如何找到相對應的正規表示式,這個就需要自己慢慢去翻了。

在該**中url為爬下來的標題點進去所有的連線位址,title為標題。

接下來就是要連線資料庫了,我這裡使用的是mysql,別的不多說,看**吧。

#

塔里木大學教務處**爬取新聞列表&儲存至mysql中

import

requests

import

reimport

mysqldb

conn = mysqldb.connect(host='

localhost

', user='

root

', passwd='

1', db='

tlm', charset="

utf8")

cur =conn.cursor()

cur.execute(

"delete from urls;

") #

清楚urls表的資料

cur.execute("

truncate table urls;

") #

將id從0開始

link = "

"headers =

r = requests.get(link,headers=headers)

r.encoding='

utf-8

'list = re.findall('

a\shref="info(/.*)"\sclass=".*"\stitle="(.*?)"\starget="_blank">

',r.text)#

a\shref="info/&&&&/.*"\sclass=".*"\stitle="(.*?)"\starget="_blank &&&&符號限制爬什麼地方

for eachone in

list:

url = "

info

"+eachone[0]

title = eachone[1]

print

(title)

cur.execute(

"insert into urls (url, title) values (%s, %s)

", (url, title))

cur.close()

conn.commit()

conn.close()

Python 入門第一戰

python 語言的地位近幾年火速上公升,tiobe 發布了最新一期 3 月份 程式語言歡迎度榜單,python 已榮昇第三,無論是國際知名 google 還是目前如火如荼的大資料 人工智慧 雲計算等都能看到 python 的應用場景,python 與最新的前沿科技緊密相連,由此可見它的重要性。之前...

Scrapy第一戰 爬取智聯招聘

scrapy是專業級t t爬蟲框架,在研究爬蟲領域頗負盛名,是當今世界最流行的爬蟲框架,沒有之一。不過如此強大的爬蟲框架,學習成本卻比較高,作為乙個新手,我對此感同身受,希望我的學習心得,避免大家入坑。安裝scrapy 開啟命令列,輸入 pip install scrapy 就是這麼簡單,安裝完成。...

20考研一戰失敗

本人本科雙非,一志願東北乙個211 就不說哪個學校了 軟體工程學碩,初試政治69,英語一61,數學一77,專業課是軟體工程專業基礎116,總分323,複試線300,進了48個人複試,只要28人,1比1.7 還是挺可怕的 由於自身概念問題掌握的不是很全面,面試全為網路面試,抽的號有比較靠前,緊張地說話...