当前位置:首页 » 操作系统 » 无限制网站源码

无限制网站源码

发布时间: 2023-08-04 16:16:57

① 求 一个免费的企业源码ASP

http://www.sitee.cn/Soft/show.asp?id=34

② 免费企业网站源码

易思easiysite pm4.1 开源无功能限制,php+sql架构,专为企业建站设计开发
官方网站:http://www.ecisp.cn/
官方交流群:4765284

③ List<T> 和 List<>分别代表什么意思

List<T> 通常指的是泛型的一种情况,而List<?>的使用是在不确定返回的集合泛型是什么类型的情况下所采用的一种方式。?表示是无限制的通配符。参数是可以任何的类型。List<T> list =new List<T>()。

泛型的定义主要有以下两种:

1、在程序编码中一些包含类型参数的类型,也就是说泛型的参数只可以代表类,不能代表个别对象。(这是当今较常见的定义)

2、在程序编码中一些包含参数的类。其参数可以代表类或对象等等。(人们大多把这称作模板)不论使用哪个定义,泛型的参数在真正使用泛型时都必须作出指明。

(3)无限制网站源码扩展阅读

泛型的一个附带好处是,消除源代码中的许多强制类型转换。这使得代码更加可读,并且减少了出错机会。
尽管减少强制类型转换可以降低使用泛型类的代码的罗嗦程度,但是声明泛型变量会带来相应的罗嗦。比较下面两个代码例子。

泛型的一个附带好处是,消除源代码中的许多强制类型转换。这使得代码更加可读,并且减少了出错机会。尽管减少强制类型转换可以降低使用泛型类的代码的罗嗦程度,但是声明泛型变量会带来相应的罗嗦。比较下面两个代码例子。

该代码不使用泛型:

List li = new ArrayList();

li.put(new Integer(3));

Integer i = (Integer) li.get(0);

该代码使用泛型:

List<Integer> li = new ArrayList<Integer>();

li.put(new Integer(3));

Integer i = li.get(0)。

④ 哪位大神有基于java+mysql的学生管理系统的源代码,其他系统也行,不限制,跪谢

简单的效果如下图

分析需要用到的技术:

  • 图形界面: 根据不同的需求, 可以选择不同的技术进行开发;(重点是布局和事件处理机制)

  1. pc端: 可以选择swing ,awt ,javaFX

  2. 网页端:JSP ;根据不同的需求进行选择

  3. 移动端: JSP/android

  • 数据存储: 需要用到JDBC技术;(常用的SQL语句的掌握)

主要考察的是 综合运用java技术的能力;

python爬虫爬取只显示10个

一个借口几万条数据但是只返回十条_爬虫实践之爬取10000条菜谱数据
2020-12-03 06:37:24

weixin_39990029
码龄5年
关注
.png
爬虫实践之XX行代码爬取10000菜谱数据

什么是爬虫

爬虫:又叫做 网络蜘蛛,是一段自动抓取互联网信息的程序,从互联网上抓取对于我们有价值的信息。
点击这里了解Python爬虫介绍

如何合法地爬虫

有些网站不允许网络爬虫,或是对可爬取的内容做了限制,一个网站的爬虫协议可通过访问该网站的robots.txt文件获得

以豆瓣网为例

访问该网址(https://www.douban.com/robots.txt),可了解到豆瓣的爬虫协议如下

.png
可以看到,豆瓣对于不同的访问者有不同的访问限制,其中对于用户名为 Wandoujia Spider的访问者,豆瓣不允许访问。

我用到的菜谱网站对爬虫无限制,所以爬虫是合法的。

.png
本篇特色

连续爬取10000个网页

引入第三方库

import requests #发送请求
import re #正则表达式,用于提取网页数据
import winsound #提醒程序运行结束
import time #计算程序运行时间
如果没有安装这些第三方库,可以在命令提示符中输入如下代码,进行下载

pip install requests,re,winsound,time
爬虫的三个步骤

获取要爬取的所有网页的网址
提取网页内容中的有用信息
信息导出
每个步骤对应一个函数

Step_1 获取要爬取的所有网页的网址

首先我们打开该网址,查看它的源代码

.png
.png
网页源代码
观察发现每道菜对应的网址在这个目录下

.png
用正则表达式获得该网址,写入列表中

由于每一个网页只有十道菜,点击下一页后发现网页的变化规律为换页时网址只有数字改变

.png
可以看到最多有1000页,也就是有10000道菜

.png
使用循环,将每一页的菜对应的网址都写入列表,每一次写入时写入一行列表,多次写入后,形成一个二维的列表,前两页的菜谱网址在二维列表中显示如下:

.png
代码如下

all_url = [] #创建一个数组用于存储网页地址
def get_all_url(n): #这个函数用于获得网页中的菜的全部网址
if(n==1):
url = "https://m.meishij.net/caixi/sucai1/"
else:
url='https://m.meishij.net/caixi/sucai1/p%s/'%n #%s相当于C语言中的%s,表示格式化一个对象为字符,同理%d表示格式化一个对象为整数
headers = {"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64)
AppleWebKit/537.36 (KHTML, like Gecko) Chrome/80.0.3987.122 Safari/537.36" }
response = requests.get(url,headers=headers) #访问网页
response.encoding = "utf-8" #设置接收编码格式
pattern = re.compile(r'<a target="_blank" href="([a-zA-z]+://[^s]*)">', re.S)
#正则表达式提取网页中的网址,re.S表示在整个文本中进行匹配,如果不加re.S,将只在一行进行匹配
result = pattern.findall(response.text) #获取的网页结果存储到result里
all_url.append(result[0:10])#由于每页只有十道菜,result中只有前十条对应的是菜的网址,故我们只添加前十条
return all_url #作为返回值返回这个列表
关于headers的说明

在使用python爬虫爬取数据的时候,经常会遇到一些网站的反爬虫措施,一般就是针对于headers中的User-Agent,如果没有对headers进行设置,User-Agent会声明自己是python脚本,而如果网站有反爬虫的想法的话,必然会拒绝这样的连接。而修改headers可以将自己的爬虫脚本伪装成浏览器的正常访问,来避免这一问题。 点击这里了解详情

关于编码格式utf-8 的说明

utf-8,可以编码中文,大部分python编译器都默认编码方式为utf-8 点击这里了解详情

Step_2 提取网页中的有用信息

打开一道菜的网址,查看源代码,寻找我们需要的信息在哪里,然后用正则表达式获取,流程与上个函数获取网址相同

主辅料信息在这里

.png
特征信息在这里(包括做法和口味)

.png
def get_info(resp,output):
name_pattern = re.compile(r'<h1>(.*)</h1>')# 正则表达式获取菜名信息
food_pattern = re.compile(r'<span class="t">(.*)</span><span class="a">(.*)</span></a></div>')# 正则表达式获得主料信息
fixing_pattern = re.compile(r'<div class="c_mtr_li"><span class="t1">(.*)</span><span class="a">(.*)</span></div>') # 正则表达式获得辅料信息
fearture1_pattern = re.compile(r'<div class="cpargs cpargs2"><div class="i"></div>(.)</div>')# 正则表达式获得特征_1
fearture2_pattern = re.compile(r'<div class="cpargs cpargs3"><div class="i"></div>(.*)</div>')# 正则表达式获得特征_2

name = name_pattern.findall(resp.text) # 提取菜名信息
food = food_pattern.findall(resp.text)# 提取主料信息
fixing = fixing_pattern.findall(resp.text)#提取辅料信息
fearture1 = fearture1_pattern.findall(resp.text) #提取特征_1
fearture2 = fearture2_pattern.findall(resp.text)#提取特征_2

output.write(str(name))#将菜名写入output文件,write函数不能写int类型的参数,所以使用str()转化
output.write('t')#进入下一个单元格
output.write(str(fearture1))#将特征_1写入output文件
output.write('t')#进入下一个单元格
output.write(str(fearture2))#将特征_2写入output文件
output.write('t')#进入下一个单元格

for i in range(len(food)):
for j in range(len(food[i])):
output.write(str(food[i][j])) #写入主料
output.write('t')
if(len(food)<11):
output.write('t'*2*(11-len(food))) #每道菜的主料数目不同,该行代码可使表格内容对齐

for i in range(len(fixing)):
for j in range(len(fixing[i])):
output.write(str(fixing[i][j])) #写入辅料
output.write('t')

output.write('n') #换行
Step_3 信息导出

def spider():
output = open('E:programingpython苏菜_2.xls','w',encoding='utf-8')#创建一个excel文件,编码格式为utf-8
output.write('名称t做法t特色t主料')#写入标题栏
output.write('t'*22)#使内容对齐
output.write('辅料n')#写入标题栏
for i in range(len(all_url)):
for j in range(len(all_url[i])):
url2=all_url[i][j]
response = requests.get(url2)#逐个访问网页,获得数据
response.encoding = "utf-8" #设置接收编码格式
get_info(response,output)#处理数据,提取信息
output.close()#关闭文件
主函数

time_start = time.time()#记录程序开始时间
for i in range(1,2):#逐页获取菜谱网页信息
get_all_url(i)
spider()#进行提取处理并导出
ration = 1000#提示音时长,1000毫秒 = 1秒
freq = 440 #提示音频率
time_end=time.time()#记录程序结束时间
print('totally cost',time_end-time_start)#打印程序运行时间
winsound.Beep(freq,ration*10) #响铃提示程序结束
经实验,爬取10000条代码需要用时3453秒左右

.png
最后获得的数据如下

.png
写在后面

我是一个C语言上不了80的小白,全靠某度和某歌东拼西凑我的这个程序,在代码风格与写作等方面存在不可避免地会有一些错误和不足的地方,希望大家多多与我交流,多多批评指教我。

热点内容
大秦帝国之崛起下载缓存 发布:2025-03-13 00:34:31 浏览:356
xp系统f盘加密 发布:2025-03-13 00:33:42 浏览:128
如何让删除的微信恢复出厂设置密码 发布:2025-03-13 00:21:48 浏览:253
七杀脚本 发布:2025-03-13 00:19:28 浏览:761
建立多级文件夹 发布:2025-03-13 00:13:34 浏览:724
存储器价格 发布:2025-03-13 00:12:14 浏览:760
编译原理上下文无关文法例题 发布:2025-03-13 00:12:12 浏览:94
微视频脚本怎么写 发布:2025-03-12 23:59:54 浏览:610
苹果手机文件夹管理 发布:2025-03-12 23:59:12 浏览:99
了解排序算法 发布:2025-03-12 23:58:06 浏览:27