当前位置: 首页 > news >正文

国税网站上如何做股权变更怎样做一个产品营销方案

国税网站上如何做股权变更,怎样做一个产品营销方案,企业营销咨询,vvic网站一起做网店网页滚动功能实现 网页的滚动 如果需要对网页进行滑动操作,可以借助浏览器对象调用execute_script()方法来执行js语句,从而实现网页中的滚动下滑操作。 使用js语法实现网页滚动: # 根据x轴和y轴的值来定向滚动对应数值的距离 window.scrol…

网页滚动功能实现

网页的滚动
如果需要对网页进行滑动操作,可以借助浏览器对象调用execute_script()方法来执行js语句,从而实现网页中的滚动下滑操作。

使用js语法实现网页滚动:

# 根据x轴和y轴的值来定向滚动对应数值的距离
window.scrollTo(横向x轴的值,竖向y轴的值)# 当前页面x轴的值为0,y轴移动到底部
window.scrollTo(0,document.body.scrollHeight)# 页面滚动到固定的位置
document.documentElement.scrollTop=数值

使用案例

import time
from selenium import webdriver
from selenium.webdriver.common.by import Bydriver = webdriver.Chrome()
driver.get('https://www.baidu.com')# 通过ID定位搜索框元素
input_element = driver.find_element(By.ID, 'kw')# 在搜索框中输入搜索内容
input_element.send_keys('美女')# 定位百度一下的按钮元素
button_element = driver.find_element(By.ID, 'su')# 对百度一下的按钮元素进行点击
button_element.click()# 滑动网页前需要等待一段时间,否则不会生效
time.sleep(2)# 利用js来滚动对应数值的距离
driver.execute_script('window.scrollTo(0,1000)')# 拖动滚动条至底部
driver.execute_script('window.scrollTo(0,document.body.scrollHeight)')# 拖动滚动条到指定位置
driver.execute_script('document.documentElement.scrollTop=6000')# 等待搜索结果加载完毕
time.sleep(3)

当当网图书页分析

采集当当图书网中的书籍的相关信息,其中主要筛选书名和价格。
网页链接:
http://bang.dangdang.com/books/bestsellers/01.00.00.00.00.00-recent7-0-0-1-1

网页分析:
如果想要抓取网站中的数据信息,需要先分析目标数据在网页中的展示方式。因为不同的网站的数据展
示方式不同,且相同网站的不同网页数据的展示方式也不尽相同,所以需要先确定具体情况。

网页中的数据要么是直接存放在 HTML 代码中,这种通过 XPath、正则表达式等方式可以筛选获取数
据。要么就是通过 Js 发送请求来展示数据的,这种就需要查找调用的 Js 接口,使用 JsonPath 筛选数
据。

判断方式可以通过Network(网络)中的Preview(预览)来查看是否有目标数据,如果有则代表数
据存放在 HTML 代码中,否则数据一般是在 Js 接口中。

滑动加载
在网页中加载大量数据时,网站为了提高网页的相应速度一般都会对数据进行分段加载,打开的网页只
会展示一部分数据信息,如果用户继续向下滑动页面,才会加载剩余的数据信息,从而提高用户的体
验。如果进入网页后直接使用 XPath 提取数据无法获取一页中的全部数据内容,就可以在 Selenium 中
模仿页面的滚动下滑操作,以保证抓取到当前网页中的全部图书信息。

当当图书单页抓取

import json
import time # 延迟模块
from lxml import etree # 解析html
from selenium import webdriver # 导入selenium# 1、创建浏览器对象并打开对应网页
driver = webdriver.Chrome()
driver.get('http://bang.dangdang.com/books/bestsellers/01.00.00.00.00.00-recent7-0-0-1-1')# 2、设置浏览器窗口最大化,并延时等待数据加载完毕
driver.maximize_window()
time.sleep(2)# 3、设置滚动次数来模拟人的动作
for i in range(1, 4):# 滚动一次停留1秒time.sleep(1)# 每次循环滚动1000的距离driver.execute_script(f'document.documentElement.scrollTop={i * 1000}')# 4、获取当前页面的html代码
str_data = driver.page_source# 5、解析网页,筛选所有图书的元素节点
html = etree.HTML(str_data)
data_list = html.xpath('//ul[@class="bang_list clearfix bang_list_mode"]/li')# 6、遍历每本图书的标签信息
for data in data_list:# 从图书的标签中获取图书名字book_name = data.xpath('./div[@class="name"]/a/text()')[0]# 从图书的标签中获取图书价格book_price = data.xpath('./div[@class="price"]/p/span[@class="price_n"]/text()')[0]print(f'书名:{book_name} 价格:{book_price}')# 7、将书籍信息打包成一个字典数据book_dict = {'name': book_name, 'price': book_price}# 8、创建json文件来保存抓取到的图书数据with open('当当图书.json', 'a', encoding='utf-8') as file:# 将字典数据转换为json字符串,且中文不进行转码json_data = json.dumps(book_dict, ensure_ascii=False) + ',\n'# 将json数据写入到文件中file.write(json_data)time.sleep(3)

当当图书分页抓取

抓取一页数据后开始进行翻页,从而获取下一页的数据信息

import json
import time # 延迟模块
from lxml import etree # 解析html
from selenium import webdriver # 导入selenium
from selenium.webdriver.common.by import By
from selenium.webdriver.chrome.options import Options# 1、输入抓取书籍的页数
pages = int(input('请输入抓取的图书页数:'))# 2、创建浏览器对象设置无界面模式,并打开对应的网页
options = Options()
options.add_argument('--headless')
driver = webdriver.Chrome(options=options)
driver.get('http://bang.dangdang.com/books/bestsellers/01.00.00.00.00.00-recent7-0-0-1-1')# 3、浏览器窗口最大化,并延时等待网页加载完毕
driver.maximize_window()
time.sleep(2)# 4、循环遍历抓取的页数
for i in range(pages):# 5、设置滚动次数来模拟人的动作for n in range(1, 4):# 滚动一次停留1秒time.sleep(1)# 每次循环滚动1000的距离driver.execute_script(f'document.documentElement.scrollTop={n * 1000}')# 6、获取当前页面的html代码str_data = driver.page_source# 7、解析网页,筛选图片元素节点html = etree.HTML(str_data)data_list = html.xpath('//ul[@class="bang_list clearfixbang_list_mode"]/li')# 8、遍历每本图片的标签信息for data in data_list:# 从图书的标签中获取图书名字book_name = data.xpath('./div[@class="name"]/a/text()')[0]# 从图书的标签中获取图书价格book_price =data.xpath('./div[@class="price"]/p/span[@class="price_n"]/text()')[0]print(f'书名:{book_name} 价格:{book_price}')# 9、将书籍信息打包成一个字典数据book_dict = {'name': book_name, 'price': book_price}# 10、创建json文件来保存抓取到的图书数据with open('当当图书.json', 'a', encoding='utf-8') as file:# 将字典数据转换为json字符串,且中文不进行转码json_data = json.dumps(book_dict, ensure_ascii=False) + ',\n'# 将json数据写入到文件中file.write(json_data)# 11、定位翻页标签,并点击该标签来实现翻页功能element = driver.find_element(By.XPATH,'//li[@class="next"]/a')element.click()# 12、翻页后等待3秒time.sleep(3)
http://www.hrbkazy.com/news/49849.html

相关文章:

  • 广东省网站备案注销百度账户安全中心
  • 做网站难吗?营销方案模板
  • 河南省建设银行网站百度一下搜索网页
  • 国外企业网址广西关键词优化公司
  • wordpress pdf 显示不了搜索引擎优化的作用
  • 网站是做响应式还是自适应的好seo快速排名软件平台
  • 网站开发者招聘营销推广外包
  • 电子商务网站建设与开发模板下载网站
  • 大学加强网站建设与管理的通知新东方雅思培训价目表
  • 怎么建设b2b网站关键词seo优化软件
  • 网站建设a云世家网络重庆营销型网站建设公司
  • 网站做广告如何做帐兰州网络推广优化怎样
  • 金色 网站 模板成品网站货源1
  • 日本可以自己做网站吗?哪些平台可以发布推广信息
  • 成都房地产上市公司有哪些免费优化网站排名
  • 知果果网站谁做的中山网站seo
  • 科室网站建设各大搜索引擎提交入口
  • 如何把自己做的网站放到微信上搜索引擎谷歌入口
  • 网络规划设计师对应中级重庆网页优化seo公司
  • wordpress 图片中文名宁波seo快速优化课程
  • 临朐门户网站网页设计素材
  • 什么网站好看用h5做百度游戏中心官网
  • 淘宝的好券网站怎么做优化大师官方免费下载
  • 网站做点击收费标准长春百度seo公司
  • 百度官方营销推广平台有哪些seo快速排名软件网址
  • 个人电脑做服务器网站色盲测试图免费测试
  • 辽宁购物网站制作百度下载安装免费
  • wordpress如何显示首页seo百度刷排名
  • 呼和浩特网站建设怎么投放网络广告
  • 钉钉小程序开发平台seo优化要做什么