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

目前流行的网站开发设计高端企业网站设计

目前流行的网站开发设计,高端企业网站设计,成都关键词快速排名,2023年6月份又封城了网页滚动功能实现 网页的滚动 如果需要对网页进行滑动操作#xff0c;可以借助浏览器对象调用execute_script()方法来执行js语句#xff0c;从而实现网页中的滚动下滑操作。 使用js语法实现网页滚动#xff1a; # 根据x轴和y轴的值来定向滚动对应数值的距离 window.scrol…网页滚动功能实现 网页的滚动 如果需要对网页进行滑动操作可以借助浏览器对象调用execute_script()方法来执行js语句从而实现网页中的滚动下滑操作。 使用js语法实现网页滚动 # 根据x轴和y轴的值来定向滚动对应数值的距离 window.scrollTo(横向x轴的值,竖向y轴的值)# 当前页面x轴的值为0y轴移动到底部 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.scrollTop6000)# 等待搜索结果加载完毕 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(fdocument.documentElement.scrollTop{i * 1000})# 4、获取当前页面的html代码 str_data driver.page_source# 5、解析网页筛选所有图书的元素节点 html etree.HTML(str_data) data_list html.xpath(//ul[classbang_list clearfix bang_list_mode]/li)# 6、遍历每本图书的标签信息 for data in data_list:# 从图书的标签中获取图书名字book_name data.xpath(./div[classname]/a/text())[0]# 从图书的标签中获取图书价格book_price data.xpath(./div[classprice]/p/span[classprice_n]/text())[0]print(f书名:{book_name} 价格:{book_price})# 7、将书籍信息打包成一个字典数据book_dict {name: book_name, price: book_price}# 8、创建json文件来保存抓取到的图书数据with open(当当图书.json, a, encodingutf-8) as file:# 将字典数据转换为json字符串且中文不进行转码json_data json.dumps(book_dict, ensure_asciiFalse) ,\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(optionsoptions) 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(fdocument.documentElement.scrollTop{n * 1000})# 6、获取当前页面的html代码str_data driver.page_source# 7、解析网页筛选图片元素节点html etree.HTML(str_data)data_list html.xpath(//ul[classbang_list clearfixbang_list_mode]/li)# 8、遍历每本图片的标签信息for data in data_list:# 从图书的标签中获取图书名字book_name data.xpath(./div[classname]/a/text())[0]# 从图书的标签中获取图书价格book_price data.xpath(./div[classprice]/p/span[classprice_n]/text())[0]print(f书名:{book_name} 价格:{book_price})# 9、将书籍信息打包成一个字典数据book_dict {name: book_name, price: book_price}# 10、创建json文件来保存抓取到的图书数据with open(当当图书.json, a, encodingutf-8) as file:# 将字典数据转换为json字符串且中文不进行转码json_data json.dumps(book_dict, ensure_asciiFalse) ,\n# 将json数据写入到文件中file.write(json_data)# 11、定位翻页标签并点击该标签来实现翻页功能element driver.find_element(By.XPATH,//li[classnext]/a)element.click()# 12、翻页后等待3秒time.sleep(3)
http://www.hkea.cn/news/14401269/

相关文章:

  • 海口哪里做网站公司网站如何添加统计代码是什么
  • 湛江网站制作网站建设电影网站算盗版吗
  • 潍坊的网站建设998元网站建设优化
  • 做网站下载那个数据库好高邮市建设网站
  • 松江区做网站东莞市建设工程监督网
  • 青岛做门户网站的深圳网站建设 湖南岚鸿
  • 企业做微网站凡客诚品支付方式
  • 苏州知名网站建设设计公司排名腾讯邮箱网页版
  • 模板建站服务器微信商城怎么弄
  • 河北建设机械协会网站深圳网站设计比较好的公司有哪些
  • 营销型网站建设供货商网站开发编辑器
  • 如何注销网站域名军刀seo
  • 武安企业做网站推广印刷网络商城网站建设
  • 小型电子商务网站网页设计北京网站建设 招聘信息
  • 网站建设信息wordpress的主题目录
  • 网站如何实现多语言wordpress 免费企业网站 模板下载
  • 上海专业网站制作设计公司莱芜新闻主持人名单
  • 巩义专业网站建设公司微信公众号的跳转网站怎么做
  • 如何做网站拓扑结构图淮安网站建设淮安网站制作
  • 制作网站需要学什么软件网站建设推广哪里好
  • 如何做好网站的推广工作台州招聘网站建设
  • 网站建设需求方案文档wordpress链接去除下划线
  • 搭建网站是要什么wordpress 预览 404
  • 网站建设普票logo制作器
  • 受欢迎的网站建设平台做一些网站的弹出页面
  • 企业电子商务网站有哪些功能生态建筑建设公司网站
  • 国外上国内网站很慢wordpress 添加表
  • 网站制作者电脑管理系统
  • 西安做百度推广网站 怎样备案丽江网页制作公司
  • hyip系统网站开发有趣网站开发