鱼C论坛

 找回密码
 立即注册
12
返回列表 发新帖
楼主: grey_lemon

Python爬虫

[复制链接]
发表于 2021-5-13 08:52:32 | 显示全部楼层
grey_lemon 发表于 2021-5-13 07:57
请教一下

我用以下代码结果运行后错误提示

这个网站也没有做反爬措施   headers 都不用加的
我随便爬了一条信息:
url="https://www.digikey.cn/en/products/filter/through-hole-resistors/53?s=N4IgrCBcoA5QjAGhDOl4AYMF9tA"
res=requests.get(url)
print(res.status_code)
tree = etree.HTML(res.text)
data = tree.xpath("//table[@id='data-table-0']/tbody/tr[1]/td[2]/div/div[3]/div[1]/a/text()")
print(data)
'''
PS D:\wp> py app4.py
     200
     ['PAC300002008FAC000']
PS D:\wp>
'''
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2021-5-13 09:15:24 | 显示全部楼层
wp231957 发表于 2021-5-13 08:18
你这也不是那个网站了,我17楼代码是测试成功的

17楼代码是成功的, 谢谢!
19楼没有写清楚, 是想试一下这个网站能不能爬

https://www.digikey.cn/en/produc ... oA5QjAGhDOl4AYMF9tA
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2021-5-18 09:06:45 | 显示全部楼层
https://www.findchips.com/parame ... t=false&page=50

像这个网站只显示了50页, 但是搜索结果有大约150,000 页
这种情况要怎么把所有的搜索结果都爬出来?
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2021-5-18 09:20:06 | 显示全部楼层
grey_lemon 发表于 2021-5-18 09:06
https://www.findchips.com/parametric/Resistors/Fixed%20Resistors?sort=false&page=50

像这个网站只 ...

那么多页  没爬过   别把人家服务器干瘫了,不要贪心啊  
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2021-5-18 09:22:18 | 显示全部楼层
wp231957 发表于 2021-5-18 09:20
那么多页  没爬过   别把人家服务器干瘫了,不要贪心啊

那像这种隐藏起来的页码有办法爬吗?
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2021-5-18 09:31:50 | 显示全部楼层
grey_lemon 发表于 2021-5-18 09:22
那像这种隐藏起来的页码有办法爬吗?

人家大概只提供50页结果吧   50以后的  也没有入口啊
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2021-5-24 13:01:57 | 显示全部楼层
wp231957 发表于 2021-5-12 16:22
给你写了一个txt版本的,xls版本的  你要是用 自己研究一下,

https://www.digikey.cn/en/produc ... h-hole-resistors/53

要从这个网站爬取一样的信息,所有的页码, 可是网址每一页网址都不规则。
可以示例下要怎么爬取吗
谢谢
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2021-5-24 15:04:13 | 显示全部楼层
grey_lemon 发表于 2021-5-24 13:01
https://www.digikey.cn/en/products/filter/through-hole-resistors/53

要从这个网站爬取一样的信息 ...

加密了,我对反加密这块不咋擅长  帮不了你了
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2021-5-24 16:02:11 | 显示全部楼层
wp231957 发表于 2021-5-24 15:04
加密了,我对反加密这块不咋擅长  帮不了你了

可以爬

import requests,re
from lxml import etree

url="https://www.digikey.cn/en/products/filter/through-hole-resistors/53?s=N4IgrCBcoA5QjAGhDOl4AYMF9tA"
res=requests.get(url)
print(res.status_code)
tree = etree.HTML(res.text)
data = tree.xpath("//table[@id='data-table-0']/tbody/tr[1]/td[2]/div/div[3]/div[1]/a/text()")
print(data)
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2021-5-24 17:11:01 From FishC Mobile | 显示全部楼层
grey_lemon 发表于 2021-5-24 16:02
可以爬

import requests,re

我说的是页码部分被加密了,需要分析js文件,狠难弄的
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2021-5-24 19:49:18 | 显示全部楼层
像这个网站, 网址是根据物料号变更的, 比如
https://octopart.com/search?q=CF ... ncy=USD&specs=0
https://octopart.com/search?q=CF ... ncy=USD&specs=0
https://octopart.com/search?q=SF ... ncy=USD&specs=0


分别是变换了以下3个物料号
CF12JT68K0
CF1/2CT52R472J
SFR16S0003321FR500

像这种情况比如我有一个物料号清单, 根据物料号清单去网页上抓取相应的"Spec"数据, 网址这块要怎么处理啊?
谢谢
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2021-5-25 10:01:16 | 显示全部楼层
grey_lemon 发表于 2021-5-24 19:49
像这个网站, 网址是根据物料号变更的, 比如
https://octopart.com/search?q=CF12JT68K0&currency=USD&sp ...

是这个吗

data={
     'q': 'CF12JT68K0',
     'currency': 'USD',
     'specs': '0'
}
url="https://octopart.com/search"
headers={'User-Agent':'Mozilla/5.0 (Macintosh; Intel Mac OS X 11_1_0) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/87.0.4280.88 Safari/537.36'}
res=requests.get(url,headers=headers,params=data)
print(res.status_code)
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2021-5-25 14:09:29 | 显示全部楼层

好像不是
比如说下面这个网址
https://octopart.com/search?q=CF ... ncy=USD&specs=0

用Chrome打开后, 读取页面上相应的以下信息:
Part                Price        Number of authorized sellers        Market Availability        Factory Lead Time         Resistance        Mount        Case/Package        Tolerance        Power Rating        Composition        Temperature Coefficient        Max Operating Temperature        Military Standard        Min Operating Temperature        Schedule B        Termination        Voltage Rating        Length        RoHS
                                                                                                                                                               
KOA Speer        Datasheet        USD 0.181        8        110,000        10w        4.7 kΩ        Through Hole        Conformal        5%        500 mW        Carbon Film        350 ppm/°C        155 °C        Not        -55 °C        8533100070        Axial        400 V        8.5 mm        Compliant
CF1/2CT52R472J                                                                                                                                                               


现在是有一个料号清单, 比如说
CF12JT68K0  
CF1/2CT52R472J
SFR16S0003321FR500

相应地每个料号有一个网址
CF12JT68K0  >https://octopart.com/search?q=CF12JT68K0&currency=USD&specs=0
SFR16S0003321FR500   >https://octopart.com/search?q=SFR16S0003321FR500&currency=USD&specs=0

然后读出与以上一样的参数。

想这么做是因为有1000多个料号。。。要读取1000多个料号相应的参数信息
谢谢!
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2021-5-25 15:33:04 | 显示全部楼层
grey_lemon 发表于 2021-5-25 14:09
好像不是
比如说下面这个网址
https://octopart.com/search?q=CF1/2CT52R472J&currency=USD&specs=0

常规爬  估计爬不到,可以尝试一下selenium
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2021-5-26 10:49:39 | 显示全部楼层
wp231957 发表于 2021-5-25 15:33
常规爬  估计爬不到,可以尝试一下selenium

可以举个例子吗? 谢谢
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2021-5-26 10:50:30 | 显示全部楼层
wp231957 发表于 2021-5-24 17:11
我说的是页码部分被加密了,需要分析js文件,狠难弄的

谁可以帮忙把这个网站爬下试试看啊, 因为其他网站的信息都不全
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2025-1-15 17:48

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表