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

网站托管内容手机网站和电脑网站的区别

网站托管内容,手机网站和电脑网站的区别,做ppt做好的网站,wordpress可以做什么站当程序打开淘宝登陆页面后#xff0c;需要快速手动登录淘宝#xff0c;如果服务报错#xff0c;需要重新登录#xff01; pip安装库 pip install pyquery pip install selenium pip install openpyxl # 代码说明#xff1a;代码功能#xff1a; 基于ChromeDriver爬取tao…当程序打开淘宝登陆页面后需要快速手动登录淘宝如果服务报错需要重新登录 pip安装库 pip install pyquery pip install selenium pip install openpyxl # 代码说明代码功能 基于ChromeDriver爬取taobao淘宝平台商品列表数据 输入参数: KEYWORLD -- 搜索商品“关键词”pageStart -- 爬取起始页pageEnd -- 爬取终止页 输出文件爬取商品列表数据Page 页码Num 序号title 商品标题Price 商品价格Deal 商品销量Location 地理位置Shop 商品IsPostFree 是否包邮Title_URL 商品详细页链接Shop_URL 商铺链接Img_URL 图片链接# 声明第三方库/头文件 from selenium import webdriver from selenium.common.exceptions import TimeoutException from selenium.webdriver.common.by import By from selenium.webdriver.support.ui import WebDriverWait from selenium.webdriver.support import expected_conditions as EC from pyquery import PyQuery as pq import time import openpyxl as op #导入Excel读写库# 全局变量 count 1 # 写入Excel商品计数 KEYWORD input(输入搜索的商品关键词Keyword)# 要搜索的商品的关键词 pageStart int(input(输入爬取的起始页PageStart))# 爬取起始页 pageEnd int(input(输入爬取的终止页PageEnd))# 爬取终止页# 启动ChromeDriver服务 options webdriver.ChromeOptions() # 关闭自动测试状态显示 // 会导致浏览器报请停用开发者模式 options.add_experimental_option(excludeSwitches, [enable-automation]) # 把chrome设为selenium驱动的浏览器代理 driver webdriver.Chrome(optionsoptions) # 反爬机制 driver.execute_cdp_cmd(Page.addScriptToEvaluateOnNewDocument,{source: Object.defineProperty(navigator, webdriver, {get: () undefined})}) driver.get(https://www.taobao.com) # 窗口最大化 driver.maximize_window() # wait是Selenium中的一个等待类用于在特定条件满足之前等待一定的时间(这里是15秒)。 # 如果一直到等待时间都没满足则会捕获TimeoutException异常 wait WebDriverWait(driver,10) # 打开页面后会强制停止10秒请在此时手动扫码登陆# 输入“关键词”搜索 def search_goods(KEYWORD):try:print(正在搜索: {}.format(KEYWORD))# 找到搜索“输入框”input wait.until(EC.presence_of_element_located((By.CSS_SELECTOR, #q)))# 找到“搜索”按钮submit wait.until(EC.element_to_be_clickable((By.CSS_SELECTOR, #J_TSearchForm div.search-button button)))# 输入框写入“关键词KeyWord”input.send_keys(KEYWORD)# 点击“搜索”按键submit.click()# 搜索商品后会再强制停止2秒如有滑块请手动操作time.sleep(2)print(搜索完成)except Exception as exc:print(search_goods函数错误)# 翻页至第pageStar页 def turn_pageStart():try:print(正在翻转:第{}页.format(pageStart))# 滑动到页面底端driver.execute_script(window.scrollTo(0, document.body.scrollHeight);)# 滑动到底部后停留3stime.sleep(3)# 找到输入“页面”的表单输入“起始页” 请输入跳转到第几页pageInput wait.until(EC.presence_of_element_located((By.XPATH, //*[idsearch-content-leftWrap]/div[2]/div[4]/div/div/span[3]/input)))pageInput.send_keys(pageStart)# 找到页面跳转的“确定”按钮并且点击admit wait.until(EC.element_to_be_clickable((By.XPATH, //*[idsearch-content-leftWrap]/div[2]/div[4]/div/div/button[3])))admit.click()print(已翻至:第{}页.format(pageStart))except Exception as exc:print(turn_pageStart函数错误)# 获取每一页的商品信息 def get_goods(page):try:# 声明全局变量countglobal countif input(确认界面加载完毕输入数字“1”开始爬取--) 1:pass# 获取html网页html driver.page_sourcedoc pq(html)# 提取所有商品的共同父元素的类选择器items doc(div.content--CUnfXXxv div div).items()for item in items:# 定位商品标题title item.find(.title--qJ7Xg_90 span).text()# 定位价格price_int item.find(.priceInt--yqqZMJ5a).text()price_float item.find(.priceFloat--XpixvyQ1).text()if price_int and price_float:price float(f{price_int}{price_float})else:price 0.0# 定位交易量deal item.find(.realSales--XZJiepmt).text()# 定位所在地信息location item.find(.procity--wlcT2xH9 span).text()# 定位店名shop item.find(.shopNameText--DmtlsDKm).text()# 定位包邮的位置postText item.find(.subIconWrapper--Vl8zAdQn).text()postText 包邮 if 包邮 in postText else /# 定位商品urlt_url item.find(.doubleCardWrapperAdapt--mEcC7olq)t_url t_url.attr(href)# t_url item.attr(a.doubleCardWrapperAdapt--mEcC7olq href)# 定位店名urlshop_url item.find(.TextAndPic--grkZAtsC a)shop_url shop_url.attr(href)# 定位商品图片urlimg item.find(.mainPicAdaptWrapper--V_ayd2hD img)img_url img.attr(src)# 定位风格style_list item(div.abstractWrapper--whLX5va5 div).items()style []for s in style_list:s_span s(div.descBox--RunOO4S3 span).text()if s_span ! :style.append(s_span)# 构建商品信息字典product {Page: page,Num: count-1,title: title,price: price,deal: deal,location: location,shop: shop,isPostFree: postText,url: t_url,shop_url: shop_url,img_url: img_url}print(product)# 商品信息写入Excel表格中wb.cell(rowcount, column1, valuepage) # 页码wb.cell(rowcount, column2, valuecount-1) # 序号wb.cell(rowcount, column3, valuetitle) # 标题wb.cell(rowcount, column4, valueprice) # 价格wb.cell(rowcount, column5, valuedeal) # 付款人数wb.cell(rowcount, column6, valuelocation) # 地理位置wb.cell(rowcount, column7, valueshop) # 店铺名称wb.cell(rowcount, column8, valuepostText) # 是否包邮wb.cell(rowcount, column9, valuet_url) # 商品链接wb.cell(rowcount, column10, valueshop_url) # 商铺链接wb.cell(rowcount, column11, valueimg_url) # 图片链接for i in range(0,len(style)):wb.cell(rowcount, column12i, valuestyle[i]) # 风格1~3count 1 # 下一行except Exception:print(get_goods函数错误)# 翻页函数 def page_turning(page_number):try:print(正在翻页: 第{}页.format(page_number))# 强制等待2秒后翻页time.sleep(2)# 找到“下一页”的按钮submit wait.until(EC.element_to_be_clickable((By.XPATH, //*[idsearch-content-leftWrap]/div[2]/div[4]/div/div/button[2])))submit.click()# 判断页数是否相等wait.until(EC.text_to_be_present_in_element((By.XPATH, //*[idsearch-content-leftWrap]/div[2]/div[4]/div/div/span[1]/em), str(page_number)))print(已翻至: 第{}页.format(page_number))except Exception as exc:print(page_turning函数错误)# 爬虫main函数 def Crawer_main():try:# 搜索KEYWORDsearch_goods(KEYWORD)# 判断pageStart是否为第1页if pageStart ! 1:turn_pageStart()# 爬取PageStart的商品信息get_goods(pageStart)# 从PageStart1爬取到PageEndif pageStart 1 pageEnd:for i in range(pageStart 1, pageEnd):page_turning(i)get_goods(i)else:returnexcept Exception as exc:print(Crawer_main函数错误)if __name__ __main__:# 建立Excel表格try:ws op.Workbook() # 创建Workbookwb ws.create_sheet(index0) # 创建worsheet# Excel第一行表头title_list [Page, Num, title, Price, Deal, Location, Shop, IsPostFree, Title_URL,Shop_URL, Img_URL, Style_1, Style_2, Style_3]for i in range(0, len(title_list)):wb.cell(rowcount, columni 1, valuetitle_list[i])count 1 # 从第二行开始写爬取数据print(Excel建立)except Exception as exc:print(Excel建立失败)# 开始爬取数据Crawer_main()# 保存Excel表格data time.strftime(%Y%m%d-%H%M, time.localtime(time.time()))Filename {}_No.{}~{}_{}_FromTB.xlsx.format(KEYWORD,pageStart,pageEnd,data)ws.save(filename Filename)print(Filename 存储成功~)
http://www.ho-use.cn/article/10818301.html

相关文章:

  • 网站是怎样赚钱的成都asp网站建设
  • 网站建设岗位能力评估表随便来一个公司邮箱
  • 找人做企业网站 注意什么wordpress设置阅读更多
  • 昆山规模的网站建设公司有哪些安贞网站建设
  • 西安市阎良区建设局网站软件开发平台下载
  • 网站开发免费课程html5 wordpress
  • 网站诊断与检测360可以做网站
  • 企业网站的建设目的有哪些格泰网站建设
  • 网站seo优化要怎么做广州做网站推广公司
  • 南宁建站软件视频制作素材免费网站
  • 外贸soho怎么建网站从零开始做网站seo
  • 如何建设一个读书的网站怎么做运营推广
  • 山西网站搜索排名优化公司网站o2o
  • 建站小软件南宁网站开发软件
  • 网站访问流程装修效果图免费软件
  • 济宁做网站的贵州网站设计公司
  • 网站如何防止攻击园林设计
  • 模块化网站建设系统网络宣传网站建设定制
  • 网站怎么做百度口碑网站建设结论与改进
  • 新兴街做网站公司项目管理的主要内容包括哪些
  • 百度文库网站立足岗位做奉献企业网站如何做优化
  • 长沙建站网站模板wordpress站长
  • 峨眉山移动网站建设静态网站什么意思
  • 男女做暧暧网站免费广州网站建设亅新科送推广
  • wordpress建站页面什么是网络营销评价
  • 网站建设规章制度重庆哪有作网站的
  • 珠海市横琴新区建设环保局网站网站建设的业务规划
  • 杭州做网站的公司哪些比较好我是建造网站
  • 经典重庆网站黑色企业网站
  • 网站访问统计 曲线图网络设计开发专业