网页行为分析

去掉重复的id,并且存入数据库:

import MySQLdb
# 打开数据库连接
db = MySQLdb.connect(host=‘localhost‘, user=‘root‘, passwd=‘123456‘, port=3306, charset="utf8", db="db_websiterecommend")
cur = db.cursor()
# db = MySQLdb.connect(host="localhost",user="root",passwd="123456",db="db_websiterecommend",port=‘3306‘ )
# # 使用cursor()方法获取操作游标
# cursor = db.cursor()
# 使用execute方法执行SQL语句
sql=‘select ip from t_useripvisittrace‘

cur.execute(sql)
# 使用 fetchone() 方法获取一条数据库。
data = cur.fetchall()
#print(data)
user_ip=[]
for l in data:
    user_ip.append(l[0])
#print(type(user_ip))
#print(user_ip)
# 关闭数据库连接
user_ip_cai=set(user_ip)
# print(user_ip_cai)
userip=list(user_ip_cai)
value=[]
for i in range(len(userip)):
    value.append((i,userip[i]))
cur.executemany(‘insert into t_userIP_list values(%s,%s)‘,value)
db.commit()

根据网站情况,进行网站的分类:

# -*- coding: utf-8 -*-
import MySQLdb
import re
import requests
from lxml import etree
# 打开数据库连接
count=0
url=‘http://www.tipdm.org‘
db = MySQLdb.connect(host=‘localhost‘, user=‘root‘, passwd=‘123456‘, port=3306, charset="utf8", db="db_websiterecommend")
cur = db.cursor()
cur1=db.cursor()
sql=‘select page_path from t_useripvisittrace‘
sql1=‘select url_list from urls‘
cur.execute(sql)
cur1.execute(sql1)
# 使用 fetchone() 方法获取一条数据库。
value=[]
data = cur.fetchall()
print(len(data))
for each in data:
    #print(type(each[0]))
    if each[0]==‘/‘:
        print(‘2222‘)
        value.append((each[0],‘首页‘))
        cur.executemany(‘insert into t_url_classify values(%s,%s)‘, value)
        db.commit()
        count+=1
        print(count)
        #print(value)
    elif each[0]==‘/index.jhtml‘:
        print(‘3333‘)
        value.append((each[0],‘首页‘))
        cur.executemany(‘insert into t_url_classify values(%s,%s)‘, value)
        db.commit()
        count += 1
        print(count)
        #print(value)
    elif ‘index‘ in each[0]:
        print(‘4444‘)
        urls=url+each[0]
        html = requests.get(urls)
        selector = etree.HTML(html.text)
        content=selector.xpath(‘/html/body/div[6]/div[2]/div[1]/div/a[2]/text()‘)
        value.append((each[0],content))
        cur.executemany(‘insert into t_url_classify values(%s,%s)‘, value)
        db.commit()
        count += 1
        print(count)
        #print(value)
    elif ‘.jhtml‘ in each[0]:
        print(‘5555‘)
        url1=url+each[0]
        html = requests.get(url1)
        selector = etree.HTML(html.text)
        content=selector.xpath(‘/html/body/div[5]/div[2]/div[1]/div[1]/a[2]/text()‘)
        value.append((each[0],content))
        cur.executemany(‘insert into t_url_classify values(%s,%s)‘, value)
        db.commit()
        count += 1
        print(count)
    else:
        print(‘666‘)
        value.append((each[0],‘其他‘))
        print(each[0])
        cur.executemany(‘insert into t_url_classify values(%s,%s)‘, value)
        db.commit()
        count += 1
        print(count)
print(value)
print(‘finish‘)

使用pandas读取数据库进行统计

import pandas as pd
from sqlalchemy import create_engine
engine = create_engine(‘mysql+pymysql://root:[email protected]:3306/db_websiterecommend?charset=utf8‘)
sql = pd.read_sql(‘t_useripvisittrace‘, engine, chunksize = 10000)
output=‘C:\\Users\\lenovo\\Desktop\\count_.xls‘
‘‘‘z
用create_engine建立连接,连接地址的意思依次为“数据库格式(mysql)+程序名(pymysql)+账号密码@地址端口/数据库名(test)”,最后指定编码为utf8;
all_gzdata是表名,engine是连接数据的引擎,chunksize指定每次读取1万条记录。这时候sql是一个容器,未真正读取数据。
‘‘‘
import MySQLdb
# 打开数据库连接
db = MySQLdb.connect(host=‘localhost‘, user=‘root‘, passwd=‘123456‘, port=3306, charset="utf8", db="db_websiterecommend")
cur = db.cursor()
value=[]
# for j in range(len(list(sql))):
#     s=sql[j][‘ip‘].value_counts()
#     value.append((j,s))
#     print value
for i in sql:
    s=i[‘ip‘].value_counts()
    print type(s)
    value.append((list(i[‘ip‘]),list(s)))
    cur.executemany(‘insert into userip values(%,%s)‘, value)
    db.commit()
print value
时间: 2024-11-02 14:10:53

网页行为分析的相关文章

网页性能分析的几种方法

一.谷歌开发者工具的"性能"选项进行分析: 二.谷歌的Lighthouse工具(国内网络环境):基于 node(版本≥6) 1.安装:npm install -g lighthouse 2.运行使用:lighthouse <url> --view 例如:lighthouse https://www.baidu.com/ --view 三.如果可以FQ的话:可以在 Chorome 网上应用商店中安装 - 网页性能优化的扩展程序:Lighthouse.PageSpeed Ins

24为师网页的分析

24为师网站地址:https://24ways.org/,比较突出的效果就是右上角翻页出现作者头像的效果,见猎心喜,于是模仿写了一个,没有用animate,辛勤的你可以优化一下,顺便指点下. 实现的效果:1.当鼠标位于文章上方时,右上角翻页,出现作者头像. 2.文章高度自适应 以下是代码(调代码用的时间太长了,好累,css内嵌在style里,脚本内嵌在script里都不长,内容比较长的是文档结构,博客就懒得美化了) <!DOCTYPE html> <html> <head&g

网页效果分析 VCD分解

VCD分解分为三部分: 1. view 视觉                   HTML + CSS 基本界面模板 2. controller 控制            javascript  内容处理 事件处理 3. data 数据                   data.js  非必须 助于理解

精易编程助手在win10网页不能分析,显示无法访问该页只解决方法

一.错误提示: 二.解决方法: 原文地址:https://www.cnblogs.com/yxh2019/p/10496436.html

3.4 网页分析算法

在搜索引擎中,爬虫爬取了对应的网页之后,会将网页存储到服务器的原始数据库中,之后搜索引擎会对这些网页进行分析并确定各网页的重要性,即会影响用户的检索的排名结果.对于这些重要性的确定及排名结果的确定需要算法来解决,所以先来了解一下算法. 搜索引擎的网页分析算法主要分为3类:基于用户行为的网页分析算法.基于网络拓扑的网页分析算法.基于网页内容的网页分析算法.接下来我们分别对这些算法进行讲解. 搜索引擎的网页分析算法主要分为3类:基于用户行为的网页分析算法.基于网络拓扑的网页网页分析算法.基于网页内容

python使用正则表达式编写网页小爬虫

""" 文本处理是当下计算机处理的主要任务,从文本中找到某些有用的信息, 挖掘出某些信息是现在计算机程序大部分所做的工作.而python这中轻量型.小巧的语言包含了很多处理的函数库, 这些库的跨平台性能很好,可移植性能很强. 在Python中re模块提供了很多高级文本模式匹配的功能,以及相应的搜索替换对应字符串的功能. """ """ 正则表达式符号和特殊字符 re1|re2 -----> 匹配正则表达式的re

爬取知名社区技术文章_分析_1

软件运行环境是什么? python 3.50                                      -- 解释器 scrapy库                                         -- 爬虫框架 pymsql库                                         -- 连接mysql数据库 pillow库                                           -- 下载图片 目标网站是什么

C# 爬取网页上的数据

最近工作中需求定时爬取不同城市每天的温度.其实就是通过编程的方法去抓取不同网站网页进行分析筛选的过程..NET提供了很多类去访问并获得远程网页的数据,比如WebClient类和HttpWebRequest类.这些类对于利用HTTP去访问远端的网页并且下载下来是很有用的,但在对于所下载下来的HTML的解析能力方面,则显得功能很弱了.推荐一个开源的组件HTML Agility Pack(http://htmlagilitypack.codeplex.com/),它的设计目标是尽可能简化对HTML文档

网页搜集系统

自1994年万维网出现后,互联网上的网页数量就呈指数级生长,到目前为止,短短二十余年,互联网上就有成百上千亿网页.如何在这海量的网页中搜索下载具有对特定场景有价值的网页?使用什么样的策略能保证网页不会出现重复?如何保证爬虫程序的高并发爬取?如何在网页中提取关键点等等问题,这是本篇博客重点描述的内容. 1.1 万维网结构分析 把万维网看作是一个相互连通的连通图,每个网页看作一个节点,链接看作为边,其中任意一个网页可被其它网页所链接,这种链接叫"反向链接",这个网页也可以链接到其它网页,这