Python3爬蟲全國位址資訊

2022-10-04 18:24:09 字數 2484 閱讀 3426

php方式寫的一團糟所以就用python3重寫了一遍,所以因為第二次寫了,思路也更清晰了些。

提醒:可能會有502的錯誤,所以做了異常以及資料庫事務處理,暫時沒有想到更好的優化方法,所以就先這樣吧。待更懂python再進一步優化哈

歡迎留言賜教~

# 請求網頁

def get_html(url):

global curr_url

user_agent = 'mozilla/6.0 (windows nt 6.1; win64; x64) applewebkit/537.36 (khtml, like gecko) chrome/67.0.6796.99 safari/537.36'

response = urllib.request.request(url)

response.add_header('user-agent', user_agent)

response = urllib.request.urlopen(response)

html = beautifulsoup(response.read(), "html.parser", from_encoding='gbk')

return html

def get_list(url, level=1, pid=0, get_level=2):

data = ;

level_arr =

try:

print(url)

html = get_html(url)

c_url = url

tr_list = html.findall('tr', )

for tr in tr_list:

region_name, href, page = '', '',程式設計客棧 ''

td_list = tr.findall('td')

for td in td_list:

region_name = td.get_text();

# 判斷是否存在該省份

if (level == 1):

sql = "select * from region where region_name='" + region_name + "'"

db.execute(sql)

exist = db.fetchon程式設計客棧e()

if(exist):

continue

# 判斷是否全數字-非法則跳過

if (region_name.isdigit()):

continue

if (region_name):

sql = "insert into region(region_name,pid,level,url) value('" + region_name + "','" + str(

pid) + "','" + str(level) + "','" + url + "')"

db.execute(sql)

db.execute('select la程式設計客棧st_insert_id();')

last_id = db.fetchone()[0]

if (td.a):

page = td.a.attrs['href']

pattern = re.compile(r'\w*.html')

url = re.sub(pattern, page, c_url)

if (level <= get_level):

get程式設計客棧_list(url, level + 1, last_id)

# 每個省份執行完成,則提交

# 如果有出錯,則回滾

print('執行完成')

總結

python 3 爬蟲獲取可用ip位址(小白)

前幾天剛剛把正規表示式看了一些,也是只是稍微懂了一點點,所以想要寫乙個簡單的程式試一下。然後就想到了以前在找免費的 的時候有好多不能用的,所以就嘗試著寫了乙個這樣的爬蟲程式,寫的不是很好,寫的很複雜,等以後再去寫簡潔一些吧。先直接把 弄上,然後再說一下裡面的重點內容。import re import...

python3爬蟲實戰(3)

今天心血來潮去爬取了一下招聘 的實時招聘資訊。是 選的條件是北京,實習生,計算機軟體。分析 之後發現還是很容易的,不過過程中出了不少小問題,在這裡分享一下。想要爬取的是類似的表單內容。是在ul的li裡。用beautifulsoup解析之後,tem ul bsoj.find ul 存下整個ul元素。對...

python3 爬蟲入門

這裡爬取貓眼電影 top100 榜的資訊,作為學習的第乙個demo。今天開始接觸的python,從爬蟲開始。語言相對來說比較簡單,環境配置到是花了不少時間。有個要注意的點是在引入beautifursoup庫的時候會報錯,因為3.x的庫需要引入的是beautifursoup4.到這一步環境配置基本上o...