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

网站册数网站建设招聘网

网站册数,网站建设招聘网,建设留学网站,openresty wordpress1. 使用requests获取网页内容 以巴鲁夫产品为例,可以用get请求获取内容: https://www.balluff.com.cn/zh-cn/products/BES02YF 对应的网页为: 使用简单方法进行解析即可 import requests r BES02YF res requests.get("https://www.…

1. 使用requests获取网页内容

以巴鲁夫产品为例,可以用get请求获取内容:
https://www.balluff.com.cn/zh-cn/products/BES02YF
对应的网页为:
在这里插入图片描述
使用简单方法进行解析即可

import requests
r = 'BES02YF'
res = requests.get("https://www.balluff.com.cn/zh-cn/products/%s"%r).text
result = res.split("</title>")[0].split("<title>")[1]

2. 添加多进程

使用multiprocessing进行加速,以上面的balluff为例:

from multiprocessing.dummy import Pool as ThreadPool
from tqdm import tqdm
import numpy as np
import os,json,requests,base64,struct
data = pd.read_excel("balluff.xlsx",sheet_name='all')
valuelist = list(data['Type'])
def getf(type_value):try:res = requests.get("https://www.balluff.com.cn/zh-cn/products/%s"%type_value).textreturn res.split("</title>")[0].split("<title>")[1]except:return None
results = []
with ThreadPool(100) as p:results = list(tqdm(p.imap(getf, valuelist), total=len(valuelist)))

3. 加入header

有一些网站有防爬虫的功能,需要在请求中添加header,例如西门子的网站需要用如下的方法:

def getf(type_value):try:headers = {"user-agent": "Mizilla/5.0"}res = requests.get("""https://mall.industry.siemens.com/mall/zh/CN/Catalog/Product/?mlfb=%s&SiepCountryCode=CN"""%type_value,headers=headers).text.split("""productIdentifier""")[1]return res.split("""</span>""")[0].split('>')[-1]except:return None

4. 使用selenium

以festo为例,会很讨厌的弹出对话框。
在这里插入图片描述

我们使用selenium模拟点击。并且用find_element找到元素:

from selenium import webdriver
import time
from selenium.webdriver.common.by import By
driver = webdriver.Chrome()
driver.get('https://www.festo.com.cn/cn/zh/search/?text=548755')
f1=driver.find_element(By.PARTIAL_LINK_TEXT,'接受')
f1.click()
from tqdm import tqdm
r1 = []
r2 = []
for type_value in tqdm(valuelist):try:driver.get('https://www.festo.com.cn/cn/zh/search/?text=%s'%type_value)time.sleep(1)r1.append(driver.find_element(By.CLASS_NAME,'product-code--NjIDg').text)try:r2.append(driver.find_element(By.CLASS_NAME,'ident-code--qx13c').text)except:r2.append(driver.find_element(By.CLASS_NAME,'product-order-code--TR15s').text)except:r1.append(None)r2.append(None)

5. 获取真实的requests地址

以keyence为例,查看网页源代码是无法获得产品清单的,需要在chrome的开发者工具中点击Network,选择Fetch/XHR,然后刷新页面,找到Type为fetch的链接:
在这里插入图片描述
链接为/data/api/seriesModels?siteID=21&languageID=zh-CN&groupID=tcm%3A115-347504&typeID=tcm%3A115-347487&seriesID=WS_SR_fu,其中groupID开始的部分,可以从源代码中获得。具体代码为:

import json
from tqdm import tqdm
result = []
for r2i in tqdm(r2):result += json.loads(requests.get('https://www.keyence.com.cn/data/api/seriesModels?siteID=21&languageID=zh-CN&'+\list(filter(lambda x:'prd-seriesFooter-navLink of-support' in x,requests.get(r2i)\.text.split('\n')))[0].split('?')[1].split('&modelId')[0].replace('Id','ID')).text)['models']

如果找到的链接过于难处理(比如post请求带着一堆请求体),那可以直接右键,选择copy->copy curl,然后替换其中的关键字,用命令行执行即可。

http://www.yayakq.cn/news/23004/

相关文章:

  • 共享主机Wordpress迁移到vps优化点击软件
  • 邯郸网站制作个人网站dns修改
  • 怎样建俄文网站google网站提交入口
  • 设计师必去的网站上海网站建设seo站霸网络
  • 网站权限怎么设置方法课程网站建设的目的意义
  • 绿色食品网站开发步骤wordpress建站专家
  • 唐山做网站的电话化妆品购物网站模板
  • 伍佰亿网站推广百度推广助手手机版
  • 琼海市规划建设局网站国内app开发公司排名汇总
  • 怎么做网站赚钱名师工作室网站建设现状调查
  • 温州建设工程监理管理学会网站全屏网站怎么做
  • 网站设计公司长沙潍坊市安丘建设局网站
  • 网站开发周期优秀网页设计作品案例欣赏
  • 用phpcms建站的网站简易的网站建设
  • 梁山网站建设公司wordpress mysql权限设置密码
  • 广州设计网站建设系统集成项目管理
  • 网站制作完工验收单网站右侧返回顶部
  • 怎么向百度提交网站常见的营销策略有哪些
  • 深圳市南山区做网站的小公司网站建设一样注意什么
  • 手机网站生成app客户端分类目录网站平台
  • 南京市建设工程网站易语言网站建设
  • 广西网站建设开发外包网站开发中什么是站点
  • 广州建设网站是什么关系家在龙岗
  • 电商设计网站素材一键优化表格
  • 网站建设 发展方向做网站毕设任务书
  • 网站文章图片如何跳转无锡网络公司有哪些
  • 怎么使用域名访问网站常州淄博网站优化
  • 网站模板价格汽车配件响应式网站
  • 中国循环经济网站开发与设计html网站作业
  • 做网站自己申请域名还是建站公司域名解析 网站建设