鱼C论坛

 找回密码
 立即注册
查看: 1712|回复: 15

[已解决]Python爬虫项目 动态网页 求解决(微信小红包)

[复制链接]
发表于 2019-9-3 23:00:44 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
本帖最后由 huazisheng 于 2019-9-4 17:04 编辑

目标网址:

http://gs.amac.org.cn/amac-infod ... er/managerList.html

批量爬取内容:

例子:http://gs.amac.org.cn/amac-infod ... r/101000000138.html

图片1.png

图片3.png

最后一列主要是存放文字数据即可,后续,用于搜索关键词

爬取该页面网址+上述10个栏目内容,共11个列头,写入CSV文件,到指定文件夹下,例如,D:/资料/
最佳答案
2019-9-5 13:33:23
本帖最后由 Stubborn 于 2019-9-5 13:35 编辑

http://gs.amac.org.cn/amac-infod ... ;page=1&size=20      这个是翻页的链接   参数
rand: 0.6122678870895568
page: 1
size: 20
看情况,改下page,可以直接请求到,看了下,需要的参数这个链接都有返回,直接请求这个接口

动态网页,重点抓在翻页的时候,向哪里请求到的数据源
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2019-9-4 09:38:24 | 显示全部楼层
我刚试了下,不是很简单么,有点爬虫基础应该就能弄出来的啊。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 1 反对 0

使用道具 举报

 楼主| 发表于 2019-9-5 07:25:01 | 显示全部楼层
空青 发表于 2019-9-4 09:38
我刚试了下,不是很简单么,有点爬虫基础应该就能弄出来的啊。

请给出源码,让大家一起研究学习,然后,私聊我,微信红包奉上。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2019-9-5 08:04:48 | 显示全部楼层
1.png
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2019-9-5 08:45:01 | 显示全部楼层
基金.rar (11.87 KB, 下载次数: 7)
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2019-9-5 13:33:23 | 显示全部楼层    本楼为最佳答案   
本帖最后由 Stubborn 于 2019-9-5 13:35 编辑

http://gs.amac.org.cn/amac-infod ... ;page=1&size=20      这个是翻页的链接   参数
rand: 0.6122678870895568
page: 1
size: 20
看情况,改下page,可以直接请求到,看了下,需要的参数这个链接都有返回,直接请求这个接口

动态网页,重点抓在翻页的时候,向哪里请求到的数据源
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 1 反对 0

使用道具 举报

 楼主| 发表于 2019-9-5 17:28:31 | 显示全部楼层


不是一页啊,是目标:http://gs.amac.org.cn/amac-infod ... er/managerList.html
共计2万多家企业信息
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2019-9-5 17:49:03 | 显示全部楼层
自己使用正则去匹配所有链接,这里是学习的,不是来要结果的
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2019-9-10 15:26:19 | 显示全部楼层
import requests
from lxml import etree
import time
import csv
fp=open('C:/Users/Administrator/Desktop/simu.csv','wt',newline='',encoding='utf-8')
writer=csv.writer(fp)
writer.writerow(('网址','企业名称','负责人','成立时间','注册地址','办公地址','实缴资本','机构类型','全职人数','资格人数','机构网址'))
headers = {
    'User-Agent':'Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/55.0.2883.87 Safari/537.36'
}
def get_info(url):
        res=requests.get(url,headers=headers)
        res.raise_for_status()
        res.encoding=res.apparent_encoding
        seletctor=etree.HTML(res.text)
        企业名称=seletctor.xpath('//*[@id="complaint1"]')[0].text[:-6]
        成立时间=seletctor.xpath('/html/body/div/div[2]/div/table/tbody/tr[7]/td[4]')[0].text
        注册地址=seletctor.xpath('/html/body/div/div[2]/div/table/tbody/tr[8]/td[2]')[0].text
        办公地址=seletctor.xpath('/html/body/div/div[2]/div/table/tbody/tr[9]/td[2]')[0].text
        实缴资本=seletctor.xpath('/html/body/div/div[2]/div/table/tbody/tr[10]/td[4]')[0].text
        机构类型=seletctor.xpath('/html/body/div/div[2]/div/table/tbody/tr[12]/td[2]')[0].text
        全职人数=seletctor.xpath('/html/body/div/div[2]/div/table/tbody/tr[13]/td[2]')[0].text
        资格人数=seletctor.xpath('/html/body/div/div[2]/div/table/tbody/tr[13]/td[4]')[0].text
        负责人=seletctor.xpath('/html/body/div/div[2]/div/table/tbody/tr[22]/td[2]')[0].text
        机构网址=seletctor.xpath('/html/body/div/div[2]/div/table/tbody/tr[14]/td[2]/a')[0].text
urls=['http://gs.amac.org.cn/amac-infodisc/api/pof/manager?rand=0.9208465968384951&page={}&size=100'.format(number) for number in range(1,244)]
for url in urls:
        get_info(url)
        write.writerow((url,企业名称,负责人,成立时间,注册地址,办公地址,实缴资本,机构类型,全职人数,资格人数,机构网址))
        time.sleep(2)
fp.close()

QQ图片20190910152451.png

已经很努力了,但还没搞好,求大佬指点。

@kaohsing
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2019-9-10 15:28:25 | 显示全部楼层
Stubborn 发表于 2019-9-5 13:33
http://gs.amac.org.cn/amac-infodisc/api/pof/manager?rand=0.6122678870895568&page=1&size=20      这个 ...

rand的参数,每次都是变化的,size改为100,page最多243页
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2019-9-10 15:38:13 | 显示全部楼层
本帖最后由 huazisheng 于 2019-9-10 15:39 编辑
企业名称=re.findall(r'<div id="complaint1" style="display: none;">(.*?)  </div>',res.text)[0]
        #成立时间=re.findall(r'<td class="td-title">成立时间:</td>    <td class="td-content">(.*?)</td>',res.text)
        注册地址=re.findall(r'<td class="td-content" colspan="3">(.*?)</td>',res.text)[1]
        办公地址=re.findall(r'<td class="td-content" colspan="3">(.*?)</td>',res.text)[2]
        实缴资本=re.findall(r'<td class="td-content">(.*?)</td>',res.text)[1]
        机构类型=re.findall(r'<td class="td-content">(.*?)</td>',res.text)[3]
        全职人数=re.findall(r'<td class="td-content">(.*?)</td>',res.text)[4]
        资格人数=re.findall(r'<td class="td-content">(.*?)</td>',res.text)[5]
        #负责人=re.findall(r'<td class="td-content" colspan="3">(.*?)</td>',res.text)[3]
        #机构网址=re.findall(r"(http[s]?://(?:[a-zA-Z]|[0-9]|[$-_@.&+]|[!*,]|(?:%[0-9a-fA-F][0-9a-fA-F]))+)|([a-zA-Z]+.\w+\.+[a-zA-Z0-9\/_]+)",res.text)

正则寻找,有几个会变化,头痛
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2019-9-10 19:00:32 | 显示全部楼层
这个应该不难吧。。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2019-9-10 19:05:08 | 显示全部楼层
风丶少 发表于 2019-9-10 19:00
这个应该不难吧。。

我是编程小白,新手,谢谢
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-4-26 17:59:15 | 显示全部楼层
空青 发表于 2019-9-4 09:38
我刚试了下,不是很简单么,有点爬虫基础应该就能弄出来的啊。

怎么弄啊。。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-4-26 18:00:24 | 显示全部楼层
Stubborn 发表于 2019-9-5 13:33
http://gs.amac.org.cn/amac-infodisc/api/pof/manager?rand=0.6122678870895568&page=1&size=20      这个 ...

这个参数 应该怎么传入呢。。post方式 data传入么。还需要什么必备参数么
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-11-26 23:17

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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