利用Python爬取国家水稻数据中心的品种数据
- 一.页面获取
python可以进行对网页的访问,主要用到requests,beautifulsoup4包。
首先新建一个page的py文件,用来获取页面的数据。
import requests
import bs4
import re
import math
def get_page(url, coding):
from fake_useragent import UserAgent
ua = UserAgent()
headers = {
"User-Agent": ua.random}
r = requests.get(url, headers=headers,timeout=15)
r.encoding = coding
rt = r.text
soup = bs4.BeautifulSoup(rt, 'lxml')
return soup
def get_numdata(data):
con = data.find_all(name='caption')
com = con[0].next.next
s = re.findall("\d+", com)[0]
z = math.floor((int(s) - 1) / 35) + 1
return z
def get_head(data):
Head = data.find_all(name='tr', align="left")
x = Head[0].contents
y = '网址'
head_1 = [x[0].next.next, x[1].next.next, y, x[2].next.next, x[3].next.next, x[4].next.next, x[5].next.next]
head_2 = ['全生育期', '株高', '穗长', '每亩有效穗', '每穗总粒数', '结实率', '千粒重',
'整精米率', '垩白粒率', '垩白度', '直链淀粉含量', '胶稠度', '长宽比']
head = head_1 + head_2
return head
def get_province(data):
url2 = 'http://www.ricedata.cn/variety/'
con = data.find_all(name='a', target="_blank"