我想从网站获取一些数据,这需要
登录.我按请求登录
url = "http://example.com"
response = requests.get(url, {"email":"a@gmail.com", "password":"12345"})
cookies = response.cookies
Run Code Online (Sandbox Code Playgroud)
然后我想从一些JS页面获取数据.通过请求是不可能的,所以我必须使用dryscrape.
import dryscrape
url = "http://example.com/js-page"
sess = dryscrape.Session()
sess.visit(url)
Run Code Online (Sandbox Code Playgroud)
是否可以将cookie传递给visit()或者我必须寻找其他解决方案?
我有一个数据框,其中第一列是一个列表,如何迭代该列表并向相关的预定义列添加值:
workflow cost cam gdp ott pdl
['cam', 'gdp', 'ott'] $2,346
['pdl', 'ott'] $1,200
Run Code Online (Sandbox Code Playgroud)
应转换为:
workflow cost cam gdp ott pdl
['cam', 'gdp', 'ott'] $2,346 782 782 782
['pdl', 'ott'] $1,200 600 600
Run Code Online (Sandbox Code Playgroud)
我可以获得列表的长度,但无法弄清楚如何迭代列表以将其与列标题匹配。基本上,成本只是在列表中的进程数量之间平均分配。
我有一个类型为anystring_OPCtarget_anystring的模式。我可以获得一些帮助,了解如何验证两个下划线之间的字符串是否属于类型"OPC(target)"并使用正则表达式提取目标。
假设我的字符串是:MP700000001_OPC32_812345643
首先,我需要验证下划线之间的字符串是否以以下开头,然后获取第二个下划线前后的OPC目标文本。OPC
帮助赞赏!
谢谢
几年来,我经常需要将(已排序)文本的行与匹配的第一个字段组合在一起,而我从未找到过优雅(即单行unix命令行)的方法.我想要的是与unix join命令的相似之处,但是join需要2个文件,每个键最多出现一次.我想从一个文件开始,其中一个键可能出现多个tile.
我有一个执行此操作的ruby和perl脚本,但是没有办法将我的算法缩短为单行.经过多年的UNIX的使用,我还在学习新的技巧有comm,paste,uniq,等,我怀疑有一个聪明的办法来做到这一点.
有一些相关的问题,比如将所有具有相同第一列的行连接到同一行 ; 命令行匹配第一个字段匹配的行(sed,awk等) ; 并将线条与匹配的键组合在一起 - 但这些解决方案从未真正提供干净可靠的解决方案.
这是示例输入:
apple:A fruit
apple:Type of: pie
banana:tropical fruit
cherry:small burgundy fruit
cherry:1 for me to eat
cherry:bright red
Run Code Online (Sandbox Code Playgroud)
这是示例输出:
apple:A fruit;Type of: pie
banana:tropical fruit
cherry:small burgundy fruit;1 for me to eat;bright red
Run Code Online (Sandbox Code Playgroud)
这是我理想的语法:
merge --inputDelimiter=":" --outputDelimiter=";" --matchfield=1 infile.txt
Run Code Online (Sandbox Code Playgroud)
"matchfield"实际上是可选的.它可能永远是第一个领域.分隔符的后续出现应该被视为纯文本.
我不介意perl,ruby,awk单行,如果你能想到一个简短而优雅的算法.这应该能够处理数百万行输入.有任何想法吗?
我需要通过在每行末尾添加一个逗号来格式化邮件列表。已经问过这个问题,但是我没有得到建议答案的预期结果:
sed '$!s/$/,/' file > out.txt
Run Code Online (Sandbox Code Playgroud)
结果是:
user1@gmail.com
,
user2@gmail.com
,
user3@yahoo.fr
. . .
Run Code Online (Sandbox Code Playgroud)
无论如何它可以改进吗?我更需要:
user1@gmail.com,
user2@gmail.com,
user3@yahoo.fr,
. . .
Run Code Online (Sandbox Code Playgroud)
谢谢!
如果我有一个文件,其中包含用空格分隔的不可预测元素,例如:
ABC123
ABC124
ABC125 ABC321 ABC222 ABC111 ABC333
ABC069 ABC450 ABC595
Run Code Online (Sandbox Code Playgroud)
如何将它们分别打印在单独的行中?(python 或 grep/awk 等)
我想找到一个数据帧的行中是否存在两个不同的字符串.
例如,我目前有这个代码,它提供了项目a或b的答案.
items=('a|b')
df1 = train[train['antecedents'].str.contains(items,flags=re.IGNORECASE, regex=True)]
Run Code Online (Sandbox Code Playgroud)
作为有益的,因为这是,我希望找到的所有行有项目一和b.
因为我不能使用多个str.contains(因为在输入到items变量之前没有指定项目的数量),我不知道如何将' &'加入' str.contains(我试过但它没有工作).
是否有可能采用不同的方式来整合' &'?
我有一个对象数组,表示页面上 div 元素的位置。数组未排序,我需要对它们进行排序,以便它们按从左到右,然后从上到下的顺序排列。
数组“项目”是:
[{
"id": "Box 2",
"x": 354,
"y": 6
},
{
"id": "Box 3",
"x": 15,
"y": 147
},
{
"id": "Box 1",
"x": 12,
"y": 12
},
{
"id": "Box 4",
"x": 315,
"y": 146
}]
Run Code Online (Sandbox Code Playgroud)
我试过按 x 排序:
items.sort(function(a, b){
if (a.x == b.x) return a.y - b.y;
return a.x - b.x || a.y - b.y;
});
Run Code Online (Sandbox Code Playgroud)
和/或按 y 排序:
items.sort(function(a, b){
if (a.y == b.y) return a.x - b.x;
return a.y - b.y;
}); …Run Code Online (Sandbox Code Playgroud) 这是文本文件中的数据.
0.354167 male atyp_angina 0.066038 0.1621 t normal 0.648855 no 0 up 0 reversable_defect <50
0.625 male typ_angina 0.792453 0.328767 f left_vent_hyper 0.564885 no 0.677419 down 0 reversable_defect <50
0.645833 male non_anginal 0.433962 0.134703 f left_vent_hyper 0.641221 no 0.483871 flat 0 normal >50_1
0.666667 female asympt 0.481132 0.413242 f left_vent_hyper 0.572519 yes 0.16129 flat 0 reversable_defect >50_1
0.270833 male typ_angina 0.509434 0.269406 f left_vent_hyper 0.816794 no 0.129032 up 0.666667 normal <50
Run Code Online (Sandbox Code Playgroud)
我必须将第一列包含数字数据移动到每一行的最后一列.
例如:
0.354167 male atyp_angina 0.066038 0.1621 t normal …Run Code Online (Sandbox Code Playgroud) {xymyx}我想在字符串中 找到类似的模式:'9132123867'
基于模式;结果应该是:'32123'
我尝试用正则表达式来做到这一点,但我不知道如何分辨模式......
任何人都可以用正则表达式做到这一点吗?或者也许你有更好的主意!
我有以下清单:
list = [7,3,6,4,6]
Run Code Online (Sandbox Code Playgroud)
我知道可以list.index(min(list))用来查找列表中最低的数字的位置,但是如何使用它来找到第二低的数字呢?
我想选择所有行,数字和逗号,没有别的.例如,这些varchars应该由select返回:
1
1,2
1,2,3
Run Code Online (Sandbox Code Playgroud)
你知道怎么做吗?
python ×6
awk ×3
bash ×3
pandas ×2
sed ×2
unix ×2
arrays ×1
bsd ×1
command-line ×1
grep ×1
javascript ×1
join ×1
linux ×1
list ×1
preg-match ×1
regex ×1
sorting ×1
sql ×1
sql-server ×1
web-scraping ×1