问题描述:假设目前有多个网站URL,需要检查各站点keyword,description是否正常设置,如果人工逐个打开URL访问比较耗时,故采用python模拟电脑端和移动端自动打开网站URL访问,并记录下访问的结果,最终人工查看结果,对其中未正常配置的站点进行单独处理。

准备工作:计算机已正常安装python,selenium,BeautifulSoup且能正常运行python程序,读者可自行搜索安装方法,在此不做赘述。

1.模拟电脑端循环打开URL检查示例代码(只提供基础逻辑处理演示,读者可根据自己的实际业务需求进行编写)

from bs4 import BeautifulSoup
from selenium import webdriver
import datetime
now = datetime.datetime.now()
fname=now.strftime('%Y%m%d%H%M')+".txt"            /*生成txt结果文档*/

def main(url):
driver = webdriver.Chrome()
driver.get(url)
html = driver.page_source
soup = BeautifulSoup(html)
title = soup.title.string
description = soup.find(attrs={"name": "description"})['content']
keywords = soup.find(attrs={"name": "keywords"})['content']
# print('title:', title)             
# print('description:', description)
# print('keywords:', keywords)

with open('G:\\FinalOutput\\'+fname, 'a', encoding='utf-8') as file:                /*设置txt文件保存路径并写入,其中参数a表示追加内容,如果为w,则为覆盖写入,此处用到循环,故设置为a参数*/
file.write(
"网址是:" +url + "\n" + "标题是 :" + title + "\n" + "描述是:" + description + "\n" + "关键词是:" + keywords + "\n\n")    /*输出内容设置编辑*/
urls = ['http://www.aaa.com', 'http://www.bbb.com’, 'http://www.ccc.com’]     /*需要访问的URL地址,需要加http或https,并能正常访问*/
for url in urls:                                                                                      /*循环打开访问URL*/
if __name__ == '__main__':
main(url)

2.模拟移动端循环打开URL检查示例代码(只提供基础逻辑处理演示,读者可根据自己的实际业务需求进行编写)

from selenium import webdriver
import datetime

now = datetime.datetime.now()
fname = now.strftime('%Y%m%d%H%M') + "MOBILE.txt"                       /*生成txt结果文档*/

def main(url):
options = webdriver.ChromeOptions()
options.add_experimental_option('mobileEmulation', {'deviceName': 'iPhone X'})            /*模拟iPhone X浏览*/
driver = webdriver.Chrome(options=options)

driver.get(url)
page_source = driver.page_source
resp = page_source[20:600]                                                                             /*截取字符串,范围为20到600*/
with open('G:\\FinalOutput\\' + fname, 'a', encoding='utf-8') as file:              /*设置txt文件保存路径并写入,其中参数a表示追加内容,如果为w,则为覆盖写入,此处用到循环,故设置为a参数*/
file.write("网址是:" + url + "\n" + "结果是:" + resp + "\n\n")             /*输出内容设置编辑*/

urls = ['https://www.ggg.com./', 'http://www.fff.com/']                               /*需要访问的URL地址,需要加http或https,并能正常访问*/
for url in urls:                                                                                         /*循环打开访问URL*/
if __name__ == '__main__':
main(url)

python实现批量自动访问站点URL并获取内容,自动模拟打开电脑端及移动端URL访问站点,打开URL页面获取页面内容的更多相关文章

  1. from appium import webdriver 使用python爬虫,批量爬取抖音app视频(requests+Fiddler+appium)

    使用python爬虫,批量爬取抖音app视频(requests+Fiddler+appium) - 北平吴彦祖 - 博客园 https://www.cnblogs.com/stevenshushu/p ...

  2. 使用python爬虫,批量爬取抖音app视频(requests+Fiddler+appium)

    抖音很火,楼主使用python随机爬取抖音视频,并且无水印下载,人家都说天下没有爬不到的数据,so,楼主决定试试水,纯属技术爱好,分享给大家.. 1.楼主首先使用Fiddler4来抓取手机抖音app这 ...

  3. 用python+selenium将腾讯首页今日话题的内容自动发表到自己cnblog里

    目的:使用pyhton下的unittest单元测试框架并结合selenium的webdriver来实现将腾讯首页的今日话题下的内容自动发表达到自己的cnblog里. 思路:创建QQDailyTopic ...

  4. Python基于Python实现批量上传文件或目录到不同的Linux服务器

    基于Python实现批量上传文件或目录到不同的Linux服务器   by:授客 QQ:1033553122 实现功能 1 测试环境 1 使用方法 1 1. 编辑配置文件conf/rootpath_fo ...

  5. 第四百零一节,Django+Xadmin打造上线标准的在线教育平台—生产环境部署virtualenv虚拟环境安装,与Python虚拟环境批量安装模块

    第四百零一节,Django+Xadmin打造上线标准的在线教育平台—生产环境部署virtualenv虚拟环境安装,与Python虚拟环境批量安装模块 virtualenv简介 1.安装virtuale ...

  6. Python爬虫实战三之实现山东大学无线网络掉线自动重连

    综述 最近山大软件园校区QLSC_STU无线网掉线掉的厉害,连上之后平均十分钟左右掉线一次,很是让人心烦,还能不能愉快地上自习了?能忍吗?反正我是不能忍了,嗯,自己动手,丰衣足食!写个程序解决掉它! ...

  7. 【转】Python编程: 多个PDF文件合并以及网页上自动下载PDF文件

    1. 多个PDF文件合并1.1 需求描述有时候,我们下载了多个PDF文件, 但希望能把它们合并成一个PDF文件.例如:你下载的数个PDF文件资料或者电子发票,你可以使用python程序合并成一个PDF ...

  8. python打造批量关键词排名查询工具

    自己做站点的时候,都看看收录和关键词排名什么的,所以打造的这个批量关键词查询工具. #encoding:utf-8 import urllib,re,random,time,sys,StringIO, ...

  9. python虚拟环境 + 批量pip + 换源

    python虚拟环境 + 批量pip + 换源 虚拟环境 曾经我是一个小白,不管运行什么项目都用一个环境,后来项目多了,有的是Django1.11的有的是Django2的,有的项目只能在3.6上运行, ...

  10. python脚本批量生成数据

    在平时的工作中,经常会遇到造数据,特别是性能测试的时候更是需要大量的数据.如果一条条的插入数据库或者一条条的创建数据,效率未免有点低.如何快速的造大量的测试数据呢?在不熟悉存储过程的情况下,今天给大家 ...

随机推荐

  1. 中电金信:向“新”而行—探索AI在保险领域的创新应用

    大模型的应用已经渗透到各个领域,并展现出惊人的潜力.在自然语言处理方面,大模型用于机器翻译.文本摘要.问答系统等:在计算机视觉领域,应用于图像识别.目标检测.视频分析等:此外,大模型也应用于语音识别. ...

  2. JavaScript 的 Mixin 问题

    JavaScript 从 ES6 开始支持 class 了, 如何在现在的 class 上实现 mixin 呢? 很多人推荐这种搞法 Object.assign(MyClass.prototype, ...

  3. K8S deployment 重启的三种方法

    一般重启deployment,常规操作是删掉对应的pod, 但如果有多个副本集的话,一个个删很麻烦.除了删除pod,还可以: 方案一: 加上环境变量kubectl patch deploy <d ...

  4. Spring Boot + K8S 中的滚动发布、优雅停机、弹性伸缩、应用监控、配置分离

    前言 K8s + SpringBoot实现零宕机发布:健康检查+滚动更新+优雅停机+弹性伸缩+Prometheus监控+配置分离(镜像复用) 配置 健康检查 健康检查类型:就绪探针(readiness ...

  5. docker-compose network名称定义

    docker-compose启动的网络名称: 1.没有自定义网络名 $ cat docker-compose.yaml version: '2' services: zookeeper1: image ...

  6. Spark面试题汇总及答案(推荐收藏)

    一.面试题 Spark 通常来说,Spark与MapReduce相比,Spark运行效率更高.请说明效率更高来源于Spark内置的哪些机制? hadoop和spark使用场景? spark如何保证宕机 ...

  7. Qt编写安防视频监控系统25-离线地图

    一.前言 离线地图这个功能是近期才完成的,老早以前就很多人问有没有离线地图的功能,之前也大致了解过如何做离线地图,其实最核心的不是代码,而是如何搞到免费的离线地图文件,离线地图下载器网上大部分都是收费 ...

  8. Qt开源作品25-电池电量控件

    一.前言 现在这个时代,智能手机不要太流行,满大街都是,甚至连爷爷奶奶级别的人都会用智能手机,本次要写的控件就是智能手机中的电池电量表示控件,采用纯painter绘制,其实也可以采用贴图,我估计大部分 ...

  9. SuperMap Objects中如何正确获取选择Selection以及提示“遇到一个未知错误,请重新打开窗口。ErrorMessage:尝试读取或写入受保护的内存。这通常指示他内存已损坏”

    之前有一个项目中,首先在主线程(即UI线程)中通过Query()选择所需要的点几何对象记录集,然后将记录集转换为选择集,再刷新地图,从而实现将点几何对象选择并高亮显示的效果.随后通过另外一个工作线程在 ...

  10. 网络编程入门从未如此简单(二):假如你来设计TCP协议,会怎么做?

    本文原题"你管这破玩意儿叫TCP?",由闪客sun分享,转载请联系作者. 1.引言 网络编程能力对于即时通讯技术开发者来说是基本功,而计算机网络又是网络编程的理论根基,因而深刻准确 ...