Python新手求助:如何编写一个简单的爬虫程序?
最新 http://adr.meizitu.net/wp-json/wp/v2/posts?page=1&per_page=20 图片详情 http://adr.meizitu.net/wp-json/wp/v2/i?id=152201
Python新手求助:如何编写一个简单的爬虫程序?
怎么说
import requests
from bs4 import BeautifulSoup
def simple_crawler(url):
try:
# 发送HTTP请求
headers = {'User-Agent': 'Mozilla/5.0'}
response = requests.get(url, headers=headers, timeout=5)
response.raise_for_status() # 检查请求是否成功
# 解析HTML内容
soup = BeautifulSoup(response.text, 'html.parser')
# 提取所有链接
links = []
for link in soup.find_all('a'):
href = link.get('href')
if href and href.startswith('http'):
links.append(href)
# 提取文本内容(示例:获取所有段落文本)
paragraphs = [p.get_text().strip() for p in soup.find_all('p')]
return {
'title': soup.title.string if soup.title else '无标题',
'links': links[:10], # 只显示前10个链接
'paragraphs': paragraphs[:5] # 只显示前5个段落
}
except requests.exceptions.RequestException as e:
print(f"请求出错: {e}")
return None
# 使用示例
if __name__ == "__main__":
result = simple_crawler("https://www.example.com")
if result:
print(f"页面标题: {result['title']}")
print(f"\n前10个链接:")
for link in result['links']:
print(f" - {link}")
print(f"\n前5个段落:")
for para in result['paragraphs']:
print(f" - {para[:100]}...") # 只显示前100字符
代码说明:
- 用
requests库发送HTTP请求,添加User-Agent头模拟浏览器访问 BeautifulSoup解析HTML,find_all('a')找所有链接,find_all('p')找段落- 异常处理确保程序健壮性
- 返回字典包含标题、链接和文本内容
运行准备:
pip install requests beautifulsoup4
一句话建议: 先从这个基础爬虫开始,理解网页结构后再学习更复杂的功能。
https://www.cnblogs.com/fnng/p/3576154.html 看这个 我记得虫师还有个 Selenium 教程
如果谢谢有用的话,还要印钞厂干嘛
本人懒,谁给钱让我赖活着,感谢。
(要爬什么不说,给什么回报不说,就只想别人帮忙,还得去问你:请问你需要解决什么问题?)
没人写,我自己写了啊
贴个 csdn 的。。我记得之前学异步协程时候拿来测试过,直接复制下来就能跑。。。( https://blog.csdn.net/ns2250225/article/details/78448955 )
不报个价,谁给你写
看到 5 楼的回复…楼主你倒是自己写啊
自己写吧,用不到太多的技术难点吧。
上班不能写,下班回去写,公司监控访问的网址
响应数据看着像 json,可以考虑用 shell 爬,然后用 jq 命令处理 json
看到 5l 有点想笑
“你们不赶紧抢着写,要被我自己写了!”
我來幫你寫
为啥你们就不访问 url 看一下呢,伤心
这也简单了吧?
最近流行以爬虫的名义开车?
我怀疑你在开车,但我好像有证据
不用怀疑 我感觉你就是在开车 已经保留证据
NSFW.
艹,NSFW,能不开车吗?
简单的 uwp 程序已经写好,微软不给我上架,老是被拒,难过
铐起来
我只想求结果。不想要源码 哈哈哈
妹子图?似乎是在开车。。。
开车?
请关注爬虫平台 Crawlab
Github: tikazyq/crawlab
感谢楼主。
好奇这是个网站吗?网站首页是个啥? http://adr.meizitu.net/是 403 https://www.meizitu.net/也打不开,只有 https://i2.meizitu.net/能打开,但是是个朦胧月色? What ???
<br><?php<br>$jsons = file_get_contents('<a target="_blank" href="http://adr.meizitu.net/wp-json/wp/v2/posts?page=1&per_page=20');" rel="nofollow noopener">http://adr.meizitu.net/wp-json/wp/v2/posts?page=1&per_page=20');</a><br>$json_arr = json_decode($jsons, true);<br>foreach ($json_arr as $value) {<br> file_put_contents($value['id'].'.jpg', file_get_contents($value['thumb_src']));<br>}<br>
还好吧,点开看了一个,标题看着像车,假车那种。
MARK 一下,后面看搜集一点,说不定能用上呢。
额,就是结果,win 程序,不用 python 环境的那种
重新学也就 20 分钟,还跑来发个帖
开车吗?。。。。那我开个飞机吧 https://737max.tk
我怀疑你在开车,而且我有证据
偷偷收藏一下,应该没人发现吧
我怀疑你在开车,证据已经保存下来了
刚从旁边的车下来, 怎么稀里糊涂又上了另一辆
V2 转型煎蛋,下一帖就是 XX 女装
你好骚啊!
兄弟你的口味真独特
我怀疑你在开车
楼主搞好了能否贴个 github 地址,纯学习
实锤开车
之前爬过,我有全站的数据😂
meizitu 的爬虫在 github 上搜下应该有
你头像 能快速写出爬虫啊…
golang 真香
都误会楼主了, 慢点, 晕车
我网盘还有这网站 10g 的资源
orz
妹子图不是早就没有了吗
???我怀疑你再开车,但我没有证据
花式开车
咳咳咳 好吧ヽ(  ̄д ̄;)ノ
疑车有据
我怀疑你在搞黄色,我好像也有证据
改了一下你的
$json=Invoke-WebRequest “http://adr.meizitu.net/wp-json/wp/v2/posts?page=1&per_page=20” -Method Get -UseBasicParsing| ConvertFrom-Json
$wc = New-Object System.Net.WebClient
foreach ($i in $json) {
$output = split-path -Leaf $i.thumb_src
$wc.DownloadFile($i.thumb_src,$output)
}
你这个是假车,我这有辆真车: https://paste.ubuntu.com/p/2nxbtRtqFX/
用法自寻(逃
极速车
没意思(我好了)
空手套白狼?(滑稽)
你的开车技术真的一流
不是有成品发布过吗?
import requests
import json
url = ‘https://adr.meizitu.net/wp-json/wp/v2/posts?page={}&per_page={}‘
per_page = 100
page = 52
print(’##### spider start #####’)
while True:
page += 1
json_data = requests.get(url.format(page, per_page))
data = json.loads(json_data.text)
if not isinstance(data, list):
print(’##### spider end #####’)
break
for item in data:
thumb_src = item[‘thumb_src’]
title = item[‘title’] + ‘.jpg’
print(’[+] downloading {} …’.format(title))
meizi = requests.get(thumb_src)
if meizi.status_code == 200:
with open(title, ‘wb’) as f:
f.write(meizi.content)
拿来就可以开,不用加油嘛😏
[{“id”:181372,“title”:“辣妹温心怡情趣内衣 SM 诱惑 丰胸美臀身材热辣销魂”,“img_num”:46,“thumb_src”:“https://i2.meizitu.net/2019/04/23a25.jpg”,“thumb_src_min”:“https://i2.meizitu.net/thumbs/2019/05/181372_23a25_236.jpg”},{“id”:180743,“title”:“大胸女神恩一雪白玉兔诱人呈现 手捧巨乳再掀性感狂潮”…
😄
早说吗!
要啥爬虫, 一行命令的事情
curl -s http://adr.meizitu.net/wp-json/wp/v2/posts?page=1&per_page=20 | jq -r ‘.[] | .thumb_src’ | xargs -IX curl -s -O X
好人一生平安?(
import json
import os
import requests
if name == ‘main’:
flag = True
page = 1
while flag:
print(“page:” + str(page))
list_html = requests.get(“http://adr.meizitu.net/wp-json/wp/v2/posts?page=” + str(page) + “&per_page=20”)
content = list_html.content
json_loads = json.loads(content)
if isinstance(json_loads, list):
print(json_loads)
for list_item in json_loads:
id_ = list_item[‘id’]
title = list_item[‘title’]
print(title)
detail_html = requests.get(“http://adr.meizitu.net/wp-json/wp/v2/i?id=” + str(id_))
detail_json = json.loads(detail_html.content)
print(detail_json)
str_content_ = detail_json[‘content’]
content__split = str_content_.split(’,’)
print(‘downloading ’ + str(content__split))
for detail_item in content__split:
print(detail_item)
rfind = detail_item.rfind(’/’)
file_name = detail_item[rfind + 1:len(detail_item)]
folder_path = “./images/” + title + ‘/’
if not os.path.exists(folder_path):
os.makedirs(folder_path)
requests_get = requests.get(detail_item)
with open(folder_path + file_name, “wb”) as f:
f.write(requests_get.content)
else:
code_ = json_loads[‘code’]
if code_ != ‘rest_post_invalid_page_number’:
print(code_)
else:
print(code_ + " exit")
flag = False
page += 1
ios 捷径也可以的
图片地址都好爬 关键是 怎么样把地址全部快速爬下来 网站反爬很坑爹
车个屁,你们这也配叫车?笑出前列腺液…https://github.com/94se/94se—/wiki
果然特么十个爬虫九个都是妹子图
#80
is or contains sexually obscene content
举报了
确实不能算车,meizitu 连点都不漏,婴儿车吗?
你认真的?
从疑车无据到真车,你们城里人真会玩。
meizitu 这个网站我爬过🌚不过是直接解析网页里的图片链接,似乎没有做任何反爬的措施🌚
我怀疑你在开车,但我又没有证据…
再者说了, 你怎么穿着品如的衣服???
诸君各显神通啊
我怀疑你在开车,但是。。。我好了
有什么访问的 爬虫入门爬的网站
看到 meizitu 我就知道一定不简单
不是怀疑在开车,是肯定在开车,特么我点开后直接被公司的上网行为管控给屏蔽了,我要举报楼主
坏笑:)
大老,有源码吗
我怀疑你在开车。。而且我有证据。。\u8fa3\u59b9\u6e29\u5fc3\u6021\u60c5\u8da3\u5185\u8863SM\u8bf1\u60d1\u4e30\u80f8\u7f8e\u81c0\u8eab\u6750\u70ed\u8fa3\u9500\u9b42
放我下车
本来以为是··
结果居然是··
我怀疑你在开车,而且楼上很多人都有证据了!!!
lz 好人,lz 一生平安?
开车。。。倒不如直接点开看呢。


