2021-09-14
作者:互联网
上机--爬虫1
1.要求
- 编写写一个简单的爬虫程序,爬取武昌首义学院的学校要闻主题,理解爬虫的概念、网页的结构及爬虫工作原理。
代码
import requests
from bs4 import BeautifulSoup # 从bs4库中导入BeautifulSoup
import re
from lxml import etree
def return_html():
url = 'http://www.wsyu.edu.cn/'
strhtml = requests.get(url) # get方式,获取网页数据
strhtml.encoding=strhtml.apparent_encoding
return strhtml
def xpath_get(x):
html=etree.HTML(x.text)
ul=html.xpath("//li/p[@class='title']/a/text()")
for i in ul:
print("xpath_get---标题:"+i)
def re_get(x):
pattern=r'<p class="title"><a href="(.+)" target="_blank" title="(.+)">.+</a></p>'
data = re.findall(pattern, x.text)
for i in data:
print("re_get---标题:"+i[1])
def bs_get(x):
soup = BeautifulSoup(x.text,'lxml')
data = soup.select('#index > div.block.block1 > div > div.spot > div > ul > li> p>a')
for item in data:
print("bs_get---标题:"+item.get_text())
if __name__=='__main__':
x=return_html()
xpath_get(x)
re_get(x)
bs_get(x)
截图结果
2.内容
- 掌握API数据的获取方式,MongoDB数据库的安装、配置和数据的查询。
要求:
1.安装好Python第三方库bs4,能正确使用Beautiful Soup库,中的select方法;
2.学会使用页面审查元素的辅助工具,查看某元素的选择器。
3.注册免费API并会阅读技术文档,熟悉API的运作方式。
代码
import requests
import json
import time
url='http://cdn.heweather.com/china-city-list.txt'
strhtml=requests.get(url)
strhtml.encoding=strhtml.apparent_encoding
data=strhtml.text
data1 = data.split("\n")
for i in range(6):
data1.remove(data1[0])
for item in data1[:20]:
url = 'https://devapi.heweather.net/v7/weather/3d?location=' + item[4:13] + '&key=6d16870a745349578f01e664d3482521'
strhtm=requests.get(url)
time.sleep(1)
dic = strhtm.json()
print(item[38:45]+item[4:13]+"的最高气温:"+dic["daily"][0]["tempMax"])
3.总结
供学习使用!!
标签:14,get,text,09,strhtml,2021,item,import,data 来源: https://blog.csdn.net/joyyi9/article/details/120281389